这里是将javascript数组转换为php数组的代码.....这是用cookies完成的......
function getCookie(c_name)
{
var i,x,y,ARRcookies=document.cookie.split(";");
for (i=0;i<ARRcookies.length;i++)
{
x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
x=x.replace(/^\s+|\s+$/g,"");
if (x==c_name)
{
return unescape(y);
}
}
}
function setCookie(c_name,value,exdays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
document.cookie=c_name + "=" + c_value;
}
function checkCookie()
{
var a_php = "";
var a=new Array();
/*
a[0]="Saab";
a[1]="Volvo";
a[2]="BMW";
a[3]="sample"
a[4]="Saab";
a[5]="Volvo";
a[6]="BMW";
a[7]="sample"
a[8]="Saab";
a[9]="Volvo";
a[10]="BMW";
a[11]="sample"
a[12]="Saab";
a[13]="Volvo";
a[14]="BMW";
a[15]="sample"
a[16]="Saab";
a[17]="Volvo";
a[18]="BMW";
a[19]="sample"
a[20]="Saab";
a[21]="Volvo";
a[22]="BMW";
a[23]="sample"
a[24]="Saab";
a[25]="Volvo";
a[26]="BMW";
a[27]="sample"
*/
for(var t=0;t<350;t++)
a[t]="hello"+t;
for(var count=0;count<a.length;count++)
a_php = a_php+a[count]+",";
setCookie("new_cookie1",a_php,3);
}
</script>
是否有任何可能的方法将javascript数组转换为没有cookie的PHP ....
答案 0 :(得分:5)
有时无法更改服务器端以将输出更改为json。我在表格中输入了
[ ['azz2465014416', '8', '22'],['azz2465014418', '10', '22'],['azz2465014420', '12', '22'],['azz2465014422', '14', '22'] ]
我使用这个php代码从这个输入获取php数组:
<?php
$a = "[ ['azz2465014416', '8', '22'],['azz2465014418', '10', '22'],['azz2465014420', '12', '22'],['azz2465014422', '14', '22'] ]";
$b = '$c = '.(str_replace(array('[',']'),array('array(',')'),$a)).';';
eval($b);
print_r($c);
然后您将获得可变$ c结果输出。这不是理想的解决方案。它不会涵盖每个javascript数组,但是如果你遇到某些数组有问题,你可以改变它来覆盖你的情况。
答案 1 :(得分:4)
您应该将其发布到另一个(或当前)页面以使用PHP进行处理。如果您不希望重定向页面使用AJAX将数组发送到PHP。
答案 2 :(得分:4)
在JS中:
var a, s;
a = [ 'one', 'two', 'three'];
s = JSON.stringify( a );
//Do something to send `s` to the server in a request
在PHP中,假设s
来自cookie中的客户端
<?php
$a = json_decode( $_COOKIE['s'], true );
这很简单。
答案 3 :(得分:2)
您可以使用JSON执行此操作。
在JavaScript端,只需使用JSON.stringify(theArray);
创建该数组的JSON表示。
在PHP中,您可以使用json_decode(theString, true);
来获取数组
链接:
http://php.net/manual/function.json-decode.php
http://en.wikipedia.org/wiki/JSON