在php中读取jquery数组

在php中读取jquery数组,php,jquery,arrays,Php,Jquery,Arrays,我试图通过php脚本中的post检索数组的值 var data = []; table.rows({ selected: true }).every(function(index){ // Get and store row ID data.push(this.data()[0]); //create a 1 dimensional array }); //send data via ajax $.ajax({

我试图通过php脚本中的post检索数组的值

var data = [];
table.rows({ selected: true }).every(function(index){
    // Get and store row ID
    data.push(this.data()[0]);  //create a 1 dimensional array
});

//send data via ajax    
$.ajax({                                      
      url: '/...../...',                  
      type: 'POST',   
      data: {userid:data},                      
      dataType: 'json',                       
到目前为止,在我的PHP脚本中,我无法解码数组。我试过很多方法

$myArray = $_REQUEST['userid'];
foreach ($arr as $value) {
    $userid= $value;             //for now just trying to read single item 
}
我试过打印($myArray);这将成功地将数组内容打印到屏幕上

我正在尝试检索要处理的值!请给我指出正确的方向

只需使用:

echo json_encode($myArray);

我认为PHP不会将您称之为“数据”的数组识别为数组。您不能将表行中的数据转换为JavaScript对象中的值,将其编码为JSON字符串,然后将其发布到PHP脚本中,并在PHP端使用JSON解码($\u post[“userid]”)将其转换为PHP数组。

您发布到PHP的对象不是一个特定的jQuery对象。相反,它是一个JSON对象,或者更确切地说是一个JSON字符串。我猜你不能像在PHP中读取常规数组那样读取该对象

您可能希望尝试使用
json\u decode()
对字符串进行解码。使用true作为函数参数,它将返回一个php数组,如本stackoverflow回答中所建议的


json\u decode()

您是
foreach
的文档正在循环
$arr
,该循环不存在。您的数组设置为$myArray,因此请在for中使用它

$myArray = $_REQUEST['userid'];
foreach ($myArray as $value) {
    $userid= $value;             //for now just trying to read single item 
}

我相信您也应该能够根据您的var\u转储在
$\u POST

中找到您的值:

array(1) { ["userid"]=> string(21) "assssssss,camo,castor" }
如果我们假设“assss,camo,castor”是3个不同的用户名。 您应该使用以下选项:

 $userids=explode(",",$myArray->userid);
    foreach($userids as $userid){
        // use $userid
   }

您想如何处理这些值?
$myArray
但是
foreach($arr)
?你确定你在这里做什么吗?可能是重复的。你能告诉我们var_转储的结果吗。请查看“var_dump”的结果:数组(1){[“userid”]=>string(21)“assssss,camo,castor”}@monderskyIve在发布之前尝试对数组进行编码。这会导致循环引用错误您是否先将值添加到对象而不是数组中?此语句是否不简单地将数组发回调用脚本?
 $userids=explode(",",$myArray->userid);
    foreach($userids as $userid){
        // use $userid
   }