Javascript 如何将变量数组从html发送到php

Javascript 如何将变量数组从html发送到php,javascript,php,html,Javascript,Php,Html,将变量数组从html发送到php的最佳方式是什么? 我尝试过使用serialise,但似乎无法正常工作。 谢谢 它很脏,但可能是这样的: var arrayString = ""; for (int i = 0; i < varArray.length; i++) { arrayString += "&element" + i + "=" + varArray[i]; } var arraysting=“”; for(int i=0;i

将变量数组从html发送到php的最佳方式是什么? 我尝试过使用
serialise
,但似乎无法正常工作。 谢谢


它很脏,但可能是这样的:

var arrayString = "";

for (int i = 0; i < varArray.length; i++)
{
    arrayString += "&element" + i + "=" + varArray[i];
}
var arraysting=“”;
for(int i=0;i

然后您可以将arrayString添加到URL中

您必须在Javascript中执行两个步骤

  • stringify对象:它必须是HTTP访问服务器的字符串
  • 有效URI编码:合法URI字符串编码
  • var arraytextaresnames=['1','2','3'];
    var jsonstring=JSON.stringify(arrayTextAreasNames);
    log('before encode',jsonstring);
    var encoded=encodeURIComponent(jsonstring);
    log('encoded',encoded);
    
    ///open(“GET”、“MyPhpScript.php?hId=“+inputId+”&arrayTextAreasNames=“+encoded,true”)
    只需使用
    json将数组转换为json。stringify
    并使用
    encodeURIComponent

    var arrayTextAreasNames = ['1','2','3'];
    var jsonString = JSON.stringify(arrayTextAreasNames);
    
    xhttp.open("GET", "MyPhpScript.php?hId=" + inputId + "&arrayTextAreasNames=" + encodeURIComponent(jsonString), true);
    
    在php中,您可以使用
    rawurldecode

    $arrayTextAreasNames = json_decode(rawurldecode($_GET['arrayTextAreasNames']));
    

    POST方法怎么样。在PHP中使用
    print\r($array)
    var\u dump($array)
    而不是
    console.log
    console.log
    在PHP中不起作用。它用于javasctipt
    $arrayTextAreasNames = json_decode(rawurldecode($_GET['arrayTextAreasNames']));