2016-10-18 1 views
-1

einfügen Ich wollte Werte in ein PHP-Array unter Bedingungen wie dem unten beschriebenen einfügen, aber es passiert nicht.Wie man Werte in ein PHP-Array unter Verwendung von for-Schleife und Bedingung

Bitte lassen Sie mich wissen, wenn es andere Möglichkeiten gibt, dies zu tun, da ich einen "undefinierten Offset" -Fehler bekomme.

$noarray = array(); 

for ($i=1; $i<=10 ;$i++) 
{ 
    $noarray[]=$i; 
    echo $noarray[$i] . "<br/>"; 
} 
+2

In welchem ​​Zustand? Beachten Sie auch, dass wenn Sie '$ noarray [] = $ i;' verwenden, Ihr Array 0-basiert indiziert wird und Sie versuchen, mit dem Index 1 zu beginnen. – Rizier123

+0

Verbessern Sie die Formatierung und den Wortlaut – shakaran

Antwort

1

Sie fügen $i als Wert in der $noarray Array.

So nehmen Sie Schritt für Schritt, wenn $i == 1 (erster Schritt in for) Sie in das erste Element der Array-Wert der $i (1) hinzufügen. Da in PHP-Index von 0 beginnt, haben Sie ein Array wie folgt: [0 => 1] mit nur einem Element. Bei diesem Schritt versuchen Sie, auf das Array nach Index $i = 1 zugreifen, aber Sie haben nur bei Index 0 Wert.

Ich weiß nicht genau, was Sie versuchen, aber Sie verwirren mit Index und Wert.

Wahrscheinlich wollen Sie so etwas wie dieses:

$noarray=array(); 
for ($i=1; $i<=10 ;$i++) 
    { 
     $noarray[$i] = $i; 
     echo $noarray[$i]; 
     echo"<br/>";  
    } 

diese Weise können Sie im Index angeben $i zu Wert $i. Sie können dies ändern, wenn Sie möchten.

+0

Daniel, das war hilfreich. Danke für Ihre Bemühungen. –

0

Sie versuchen, Zugriff der Array-Schlüssel mit Fortschritt relativ zu dem Moment, als es tatsächlich festgelegt wurde.
Der richtige Zugang zum aktuellen Schlüssel sollte wie folgt lauten:

... 
$noarray[] = $i; 
echo $noarray[$i - 1]; 

OR wie es in der vorherigen Antwort erwähnt wurde:

... 
$noarray[$i] = $i; 
echo $noarray[$i]; 
0

Versuchen Sie folgendes:

for ($i = 0; $i <= 10; $i++){ 
    $noarray[] = $i; 
    $noarray[0] = 0; 
    $noarray[1] = 1; 
} 
Verwandte Themen