PHP Session Array Value "Array" olarak gösteren ediyor

3 Cevap

Ikinci bir sayfaya bir forma veri gönderirken, oturumun değeri beklenen sayının adı "Array" insteed ile her zaman.

The data should get displayed in a table, but insteed of example 1, 2, 3 , 4 i get : Array, Array, Array. (A 2-Dimensional Table is used)

Dizi 2. sayfasında saklanan değerleri üzerine "aramak" için uygun bir şekilde aşağıda aşağıdaki kod var mı?

$test1 = $_SESSION["table"][0];
$test2 = $_SESSION["table"][1];
$test3 = $_SESSION["table"][2];
$test4 = $_SESSION["table"][3];
$test5 = $_SESSION["table"][4];

What exactly is this, and how can i fix this? Is it some sort of override that needs to happen?

Saygılarımızla.

3 Cevap

Sen geçersiz kılma her türlü gerekmez. Bunun yerine, örneğin bir dizi içinde bir değerden, ekranda bir bütün dizi yazdırmak için çalışıyoruz çünkü komut dosyası, yerine bir değerden "Array" yazdırıyor:

$some_array = array('0','1','2','3');

echo $some_array; //this will print out "Array"

echo $some_array[0]; //this will print "0"

print_r($some_array); //this will list all values within the array. Try it out!

Onun çirkin çünkü print_r(), üretim kodu için yararlı değildir; Ancak, test amacıyla bu iç içe diziler üzerine saç çekerek tutabilirsiniz.

Bu indeks tarafından dizideki elemanları erişmek için gayet iyi: $some_array[2]

Eğer bir tablo içinde isterseniz böyle bir şey yapacağım:

<table>
    <tr>
    for($i = 0 ; $i < count($some_array) ; $i++) {
        echo '<td>'.$some_array[$i].'</td>';
    }
    </tr>
</table>

Belirtildiği gibi, deneyin

echo "<pre>";
print_r($_SESSION);
echo "</pre>";

Bu oturum dizide ne size göstermek gerekir.

A 2-boyutlu bir tablo diziler sadece bir dizidir.

Yani, $_SESSION["table"][0] çekerek, tablonun ilk satırı temsil eden bir dizi çekerek ediyoruz.

Eğer bu tablodan belirli bir değer istiyorsanız, siz de, ikinci endeksi geçmesi gerekiyor. yani $_SESSION["table"][0][0]

Yoksa sadece $table tekrar normal tablo olurdu $table = $_SESSION["table"]; hangi noktada tembel olabilir ve yapabilirdi.