phpbar.de logo

Mailinglisten-Archive

[php] serialize unserialize

[php] serialize unserialize

Dietmar Winhold SSD-DiWi_(at)_T-Online.de
Thu, 11 Jan 2001 20:12:10 +0100


Hallo,

ich möchte einen Array an eine Url anhängen und auf eine
andere Seite übergeben.

Ich bearbeite ihn mit serialize: $s_demo=array(serialize($demo));

Das scheint auch zu funktionieren, nach der Übergabe sieht der
String "$s_demo" dann so aus: :

	a:3:{s:4:\"eins\";i:1;s:4:\"zwei\";i:2;s:4:\"drei\";i:3;}

Wenn ich diesen dann aber mit unserialize bearbeite, bekomme
ich zwar einen Array, dieser ist aber leer?

Was kann das sein?

Im folgenden ein komplettes Test-Script.

Vielen Dank

Dietmar


<?php

Function print_array($array)
	{
	if(gettype($array)=="array")
		{
		echo "<ul>";
		while (list($index, $subarray) = each($array))
			{
			echo "<li>$index <code>=&gt;</code> ";
			print_array($subarray);
			echo "</li>";
			}
		echo "</ul>";
		}
	else echo $array;
	}

switch ($flag)
	{
	case 0:
		$demo = array("eins" => 1, "zwei" => 2, "drei" => 3);
		print_array($demo);	echo "<br><br>"; //Zur Kontrolle ausgeben ist OK
		$s_demo=serialize($demo);
		echo "<a href='array-string.php?s_demo=$s_demo&flag=100'>Jetzt
absenden</a>";
	break;

	case 100;
		echo "Nach der Übergabe: ".$s_demo."<br>";  // hier wird's serialisiert
angezeigt
		$demo=array(unserialize($s_demo));
		print_array($demo); // und hier zeigt er nichts mehr an!?
	break;

	} // Ende: switch($flag)
?>



php::bar PHP Wiki   -   Listenarchive