我使用以下命令将我在javascript中发送的数组发送到php:
usernames = ['username1','username2']
$.ajax({
url: "my_Url",
type: "post",
data: {username:usernames} ,
success: function (response) {
// you will get response from your php page (what you echo or print)
alert(response);
}
});
数据将被发送到包含以下内容的php脚本:
<?php
header('Access-Control-Allow-Origin: *');
$usernames = $_POST['username'];
echo $usernames;
?>
问题是我得到一个警告说Array但不是实际数组本身的内容。如何获取数组内部的内容并将其再次放入变量中。
答案 0 :(得分:0)
因为数据类型是一个数组,所以javascript会从回显的PHP中发出警告。通常,您可以使用SELECT COUNT(DISTINCT fieldA) + MAX(CASE WHEN fieldA IS NULL THEN 1 ELSE 0 END)
json_encode()
然后在前端处理JSON,使用echo json_encode($usernames);
。正如一位用户指出的那样,在回显json之前,在后端脚本中设置内容头是很有用的:
JSON.parse()
更详细地讨论了这种方法here。
对代码中的数值数组有用的另一种可能性是简单地回显内爆数组,它将把它转换为字符串:
header('Content-Type: application/json');