Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript数组到PHP数组,然后在PHP中处理并返回_Php_Javascript_Ajax_Json - Fatal编程技术网

JavaScript数组到PHP数组,然后在PHP中处理并返回

JavaScript数组到PHP数组,然后在PHP中处理并返回,php,javascript,ajax,json,Php,Javascript,Ajax,Json,例如: javascript: var mycourses=new Array(); mycourses[0]="History"; mycourses[1]="Math"; mycourses[1][0]="Introduction to math"; mycourses[1][1]="Math 2"; mycourses[1][2]="Math 3"; 然后PHP将通过函数运行这些值(请注意,值大部分不是上面示例中的字符串,而是数字),函数将返回一些文本,这些文本将不会显示

例如:

javascript:

var mycourses=new Array(); 
mycourses[0]="History";       
mycourses[1]="Math";
mycourses[1][0]="Introduction to math";
mycourses[1][1]="Math 2";
mycourses[1][2]="Math 3";
然后PHP将通过函数运行这些值(请注意,值大部分不是上面示例中的字符串,而是数字),函数将返回一些文本,这些文本将不会显示在表单中

我该怎么做呢


p、 s:我发现了一些类似的东西,但没有一件像这样。。。据我所知,我将不得不使用JSON(有没有一种方法可以从JS自动编码它-看到这个字符串)和AJAX

是的,你可以使用和PHP的函数来实现这一点。

JavaScript中有库。。。这将自动将数组转换为JSON,在php中有一个函数可以将JSON转换为php数组。。。你在PHP中再次处理编码,在JS中解码


JSON是JS的标准。。尝试使用它,因为大多数语言已经提供了对它的支持,这将使您的生活更加轻松。客户端,您需要将数据发送到服务器并返回结果。这是jquery的示例代码,但您可以使用另一个lib或纯js执行类似的操作:

$.post( "compute_courses.php", mycourses )
  .done(function( data ) {
     // Handle result
  })
  .fail(function( jqXHR, textStatus, errorThrown ) {
    // Handle error here
  });
这将把
mycourses
数组发送到
compute\u courses.php
,并处理结果

服务器端,这取决于您使用的是哪个框架/库,但您需要读取json、应用处理并返回结果(最有可能是使用
json\u encode
)。如果您计划自己编写该部分(没有第三方框架/lib),可以尝试以下方法:

$input = file_get_contents("php://input");
$mycourses = json_decode($input, true);
// Treatment...
$json_result = json_encode($mycourses);
exit($json_result);
如果您正在寻找一个PHP框架来帮助完成这类工作,我建议您使用或