2011-10-06 42 views
8

olarak bir skaler değer kullanılamaz:Bu kodu çalışıyorum bir dizi

for ($x = 0; $x < $numCol; $x++) { 
    for ($i = 0; $i < $numRows; $i++) { 
     $arr.$x[] = $todas[$i][$x]."\n"; //problem here 
    } 
} 

echo $arr0[0]; 
echo $arr1[0]; 
... 

Ama bu warning: Cannot use a scalar value as an array

olsun ve yankılanırken hiçbir şey. Niye ya ? ve çözüm nedir? Eğer $arr.$x[] yazarken

cevap

11

$arr0[] arasında böyle bir şey ile sonuna kadar böylece

$arr.$x[] 

birlikte dize $ arr temsilini ve $ x bitiştirmek olacaktır. ile //problem here satırı değiştirin:

${'arr' . $x}[] = $todas[$x][$i]."\n"; 

Ama şiddetle bunu yaparken karşı öneriyoruz. Sadece iki boyutlu dizinizi kullanın.

1

,

echo $arr[0][0]; 
echo $arr[1][0]; 
5

ederek yankılanırken değiştirmeyi deneyin Ne demek düşünüyorum $arr[$x][]

eşittir: ${'arr'.$x}[] yerine $arr.$x[]. Eğer Burada yapmak istediğiniz düşünmek ne 'Array0'[] = ... yerine

İlgili konular