传递 Javascript Array -> PHP

2022-08-30 08:27:02

假设我有一个javascript数组,其中包含一堆元素(从50-200不等)。

我想使用ajax将其发送到PHP(预准备语句)。目前,我在循环中多次使用php文件,但我想将其转换为数组并发送数组一次,加载PHP文件一次而不是50-200次。.load

array[i] = variable;


答案 1

您可以使用 在 JavaScript 中对数组进行编码,然后在 PHP 脚本中使用来检索它。JSON.stringify(array)$array=json_decode($_POST['jsondata']);


答案 2

AJAX 请求与通过元素发起的 GET 和 POST 请求没有什么不同。这意味着您可以使用 $_GET 和 $_POST 来检索数据。<form>

当您发出AJAX请求时(jQuery示例):

// JavaScript file

elements = [1, 2, 9, 15].join(',')
$.post('/test.php', {elements: elements})

它(几乎)等同于发布此表单:

<form action="/test.php" method="post">
  <input type="text" name="elements" value="1,2,9,15">
</form>

在这两种情况下,在服务器端,您可以从 $_POST 变量中读取数据:

// test.php file

$elements = $_POST['elements'];
$elements = explode(',', $elements);

为了简单起见,我在这里用逗号连接元素。不过,JSON序列化是一种更通用的解决方案。