<?php
$array["a"] = "Thusitha";
$array["b"] = "Sumanadasa";
$array["c"] = "Lakmal";
$array["d"] = "Nanayakkara";
$str = serialize($array);
$strenc = urlencode($str);
print $str . "\n";
print $strenc . "\n";
?>
print $str . "\n";
cho a:4:{s:1:"a";s:8:"Thusitha";s:1:"b";s:10:"Sumanadasa";s:1:"c";s:6:"Lakmal";s:1:"d";s:11:"Nanayakkara";}
và
print $strenc . "\n";
cho
a%3A4%3A%7Bs%3A1%3A%22a%22%3Bs%3A8%3A%22Thusitha%22%3Bs%3A1%3A%22b%22%3Bs%3A10%3A%22Sumanadasa%22%3Bs%3A1%3A%22c%22%3Bs%3A6%3A%22Lakmal%22%3Bs%3A1%3A%22d%22%3Bs%3A11%3A%22Nanayakkara%22%3B%7D
Vì vậy, nếu bạn muốn vượt qua $array
này thông qua URL để page_no_2.php
,
ví dụ: -
$url ='http://page_no_2.php?data=".$strenc."';
Để trở về mảng ban đầu, nó cần phải được urldecode()
, sau đó unserialize()
, như thế này trong page_no_2.php:
<?php
$strenc2= $_GET['data'];
$arr = unserialize(urldecode($strenc2));
var_dump($arr);
?>
cho
array(4) {
["a"]=>
string(8) "Thusitha"
["b"]=>
string(10) "Sumanadasa"
["c"]=>
string(6) "Lakmal"
["d"]=>
string(11) "Nanayakkara"
}
một lần nữa: D
Nguồn
2013-11-22 11:42:26
Tại sao bạn không thể chuyển vào '$ _POST'? – random
Điều này thực sự trông lộn xộn. Nhưng đối với phương pháp đó nó phải là. Cách tiếp cận khác, ít phức tạp là gán 'query = array ('aParam' => json_encode ($ arrayOfValues))'. Và bạn có thể chuyển vào url đẹp hơn với 'url_encode (implode ('/', $ query))'. Url sẽ trông giống như 'www.example.com/aParam/[va1,val2, ...]'. Khi nhận được bạn phải json_decode aParam giá trị vào mảng. –