php - 数组通过ajax传递但在php中作为字符串接收

标签 php jquery

以下是我的 jquery 代码:

 e_val = [];
 e_val = ['enroll','reject'];
 $.ajax({
                url: 'myurl.php',
                type: 'post',
                dataType: 'text',
                data: {
                    reason: 'insert',
                    eval: e_val
                },
                success: function (suc) {
                    row.remove();
                    alert(suc);
                }
       });

myurl.php:

$reason = $_POST['reason'];
$eval = array();
if($reason == "insert"){
     $eval = $_POST['eval'];
     echo $eval[1];
}

我收到的警报是:

n

这是因为 n 位于 e_val[0] 中的索引值 1 处。 我能知道为什么我的数组在 PHP 页面中转换为字符串并且我无法访问数组元素吗? 提前致谢。

最佳答案

您可以将 implode() 与 implode() 函数一起使用。 implode() 函数从数组的元素中返回一个字符串。

<html>
    <head>
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>    
    </head>
    <body>
        <script>
                   var  e_val = [];
                   var  e_val = ['enroll','reject'];
                    console.log(e_val);
                    $.ajax({
                    url: 'test2.php',
                    type: 'post',
                    dataType: 'text',
                    data: {
                        reason: 'insert',
                        eval: e_val
                    },
                    success: function (suc) {
                        alert(suc);
                    }
           });
          // alert("dddd");
            </script>

    </body>
</html>

test2.php

 <?php
    $reason = $_POST['reason'];
    $eval = array();
    if($reason == "insert"){
         $eval = $_POST['eval'];
         echo implode(', ', $eval );
       //  echo "Dddd";
    }
      // echo "Dddd";
?>  

关于php - 数组通过ajax传递但在php中作为字符串接收,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46097301/

相关文章:

php - 导出和导入数据库

php - 表格日期输入从(日期)到(日期)或我不知道一个或两个选择

javascript - 如何更改TD的背景图片?

javascript - 如何更改单选按钮的文本

php - 获取图像包含不再下载

php - 想要使用 PHP soap 客户端连接到 https 主机

PHP 子类不调用其父类构造

php - docker debian 拉伸(stretch)镜像中缺少 php-redis 存储库

javascript - 如何将文本附加到同一 html 类中的多个用户输入?

javascript - 在空白 HTML 文件中打印 json 请求时出现问题