2016-08-19 106 views
-2

我有一个javascript数组,我用JSON.stringify()对它进行编码,然后我将它加入到url中。我使用$_GETphp中对它进行解码。而afert解码我得到的字符串是这样的:我如何在“,”在PHP中爆炸?

["a","\nb","\nc","\nd"] 

现在我要爆发,并得到一个PHP数组值A,B,C。

所以,我应该这样做: $ array = explode(“”,“\ n”,$ values); 总结起来,我应该爆炸字符串:","\n charatrer链或者如果有人得到了更好的解决方案,我会appriciate它。

+0

... explode(',',$ string); – McStuffins

+0

使用explode()函数 – Karthi

+0

它是令人困惑的..你是否想将[“a”,“\ nb”,“\ nc”,“\ nd”]转换为['a','b','c'] ?? –

回答

0
$array=$_GET['values']; 
//its equals:["a","\nb","\nc","\nd"] 
    $values=explode('["', $array); 
    $values=explode('"]', $values[1]); 
    $values=explode('","\n', $values[0]); 
0

尝试

$arr = ["a","\nb","\nc","\nd"] ; 

foreach($arr as $str) { 
    $str = str_replace('\n', '', $str); 
} 

var_dump($arr); 
+0

嗨米侬,你的代码可能是正确的,但是在某些情况下,它会作出更好的回答;例如,您可以解释如何以及为什么这个提议的变更可以解决提问者的问题,或许还包括指向相关文档的链接。这将使它对他们更有用,而且对寻求类似问题解决方案的其他网站读者也更有用。 –

0

我的意思是这样的:

$str = str_replace('[', '', $str); 
$str = str_replace(']', '', $str); 
$arr = explode(',', $str); 
var_dump($arr); 
0

如果您有表示数组使用json_decode(),然后从数组元素清洁换行符JSON字符串。

$array = json_decode($_GET['values'], true); 
foreach ($array as $k=>$v) 
    $array[$k] = trim($v); 

或者在JavaScript端,发送没有换行符的数据,只是使用json_decode()