我试着解决这个问题已经有好几个星期了,但是什么也没找到。我的问题是,我在javascript中有一个数组,但数组中的单个短语中也有逗号。我使用POST将数组作为变量传递给php,php将数组分解为变量,但也分隔了具有逗号的数组成员的一部分。
步骤1: javascript中的数组
wrongOnes = ("blah blah blah", "bing, boing, bing");步骤2:通过php读取
$myArray = explode(',', $_POST["wrongOnes"]);步骤3:然后将其制作为要发布的消息
foreach($myArray as $my_Array){
$message .= "\r\n".$my_Array;
}你可以看到这个问题是爆炸性的,逗号分隔成了$myArray的额外成员。
我觉得答案应该很简单,但我目前的php水平很弱。有人能帮上忙吗?
干杯
查科。
发布于 2017-11-08 18:17:35
给你,只要它们像你的例子一样被引用。
$str = '"blah blah blah", "bing, boing, bing"';
preg_match_all('/"(.*?)"/', $str, $match);
print_r($match[1]);输出
Array
(
[0] => blah blah blah
[1] => bing, boing, bing
)你可以在这里试一下
http://sandbox.onlinephpfunctions.com/code/b12ba98b423d7e1dda792f3bd51e11cdb3fa1c16
发布于 2017-11-08 18:18:48
1) JSON encode your array in javascript,然后再发送
使用JavaScripts JSON对象的stringify方法
jsonString = JSON.stringify(wrongOnes)
和
2)使用json_decode函数在PHP中解码JSON
$myArray=json_decode($_POST['jsonString']);
来找回你原来的数组。
参考文献:
如果你在安装中碰巧错过了json模块,请查看这篇StackOverflow文章:
https://stackoverflow.com/questions/47176823
复制相似问题