在php字符串中只保留一个方括号

时间:2016-08-09 20:54:11

标签: php

我的php代码给出了这样的双括号结果:

  

[[" Faisalabad Belt",11.428571428571]],

但我想在这样的单方括号中得到结果:

  

[" Faisalabad Belt",11.428571428571],

我尝试使用str_replace(),但它没有给我预期的结果。它要么从一侧替换支架,要么从两侧不能正确替换。我使用的代码如下:

<?php
  echo (str_replace('[[','[',json_encode($poster)));
?>,

很抱歉,如果您发现问题清楚。

4 个答案:

答案 0 :(得分:2)

str_replace也接受数组......一次调用并同时替换所有数组

<?php echo (str_replace(['[[', ']]'], ['[', ']'], json_encode($poster))) ;  ?>

答案 1 :(得分:1)

使用

 $pattern = array('[[', ']]');
 $replacement = array('[', ']');
 echo str_replace($pattern, $replacement, json_encode($poster));

我确定这是XY problem

答案 2 :(得分:0)

<?php
  $result = json_encode($poster);
  $result = str_replace('[[','[', $result);
  $result = str_replace(']]',']', $result);

  echo $result;

如果$ result等于"[['Hello', 1111]]",则结果为"['Hello', 1111]"

答案 3 :(得分:0)

C:\Users\Squashman\Desktop>so.bat 1:31:04 PM 9:23:58 AM 12:42:34 PM Press any key to continue . . .

$string = '[["Faisalabad Belt",11.428571428571]],';

$result = str_replace(array('[[', ']]'), array('[', ']'), $string);现在是$result