note 56016 added to ref.array

From: Date: Sat, 20 Aug 2005 17:45:55 +0000
Subject: note 56016 added to ref.array
Groups: php.notes 
Request: Send a blank email to php-notes+get-93963@lists.php.net to get a copy of this message
This function encode array to put string to send by url. It correct from of array, that don't need to decode it; <?php function array_to_string($name,$array) { $ret=""; $key_var=""; $val_var=""; foreach ($array as $key=>$value) { $key_var="{$name}[{$key}]"; if(is_array($value)) $ret.=array_to_string($key_var,$value); else { $val_var=$value; $ret.="&".urlencode($key_var)."=".urlencode($val_var); } } return $ret; } ?> Test: <?php $var3=array("key"=>"value", "key2"=>"value2", "key3"=>array("key3_key1"=>"value3", "key3_key2"=>"value4"), "key4"=>array("key4_key1"=>"value5", "key4_key2"=>"value6", "key4_key3"=>array("key4_key3_key1"=>"value7", "key4_key3_key2"=>"value8", "key4_key3_key3"=>"value9", ), "key4_key4"=>"value10"), ); var_dump($_GET); $link=$_SERVER['PHP_SELF']."?".array_to_string("var",$var3); ?><br><a href="<?=$link?>"><?=$link?></a> After you go link, you see: array(1) { ["var"]=> array(4) { ["key"]=> string(5) "value" ["key2"]=> string(6) "value2" ["key3"]=> array(2) { ["key3_key1"]=> string(6) "value3" ["key3_key2"]=> string(6) "value4" } ["key4"]=> array(4) { ["key4_key1"]=> string(6) "value5" ["key4_key2"]=> string(6) "value6" ["key4_key3"]=> array(3) { ["key4_key3_key1"]=> string(6) "value7" ["key4_key3_key2"]=> string(6) "value8" ["key4_key3_key3"]=> string(6) "value9" } ["key4_key4"]=> string(7) "value10" } } } ---- Manual Page -- http://www.php.net/manual/en/ref.array.php Edit -- http://master.php.net/manage/user-notes.php?action=edit+56016 Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+56016&report=yes&reason=added+to+the+manual Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+56016&report=yes&reason=bad+code Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+56016&report=yes&reason=spam Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+56016&report=yes&reason=useless Delete: non-english -- http://master.php.net/manage/user-notes.php?action=delete+56016&report=yes&reason=non-english Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+56016&report=yes Reject -- http://master.php.net/manage/user-notes.php?action=reject+56016&report=yes Search -- http://master.php.net/manage/user-notes.php

« previous php.notes (#93963) next »