修剪字符串直到出现特定字符

时间:2014-12-06 23:59:56

标签: php string api callback trim

我想修剪一个字符串并删除特定字符之前的所有内容,因为我使用的API会在其回调中为我提供一些我想要删除的不需要的数据。

Callback看起来像这样:

{"someVar":true,"anotherVar":false,"items":[  {"id":123456, [...] }

我只想在 [之后的代码,所以如何分割这样的字符串? 谢谢!

2 个答案:

答案 0 :(得分:1)

它是JSON,所以你可以解码它:

$data = json_decode($string);

如果你真的想要修剪某个角色,那么你可以找到角色的位置,然后切断它前面的所有东西:

if (($i = strpos($string, '[')) !== false) {
    $string = substr($string, $i + 1);
}

答案 1 :(得分:0)

您可以使用各种功能。例如:

$someVar = explode('[',$string,2);
$wantedData = $someVar[1];

或者,如果您只想要[]之间的数据,请使用:

$pattern = '~\[([^\]])\]~Ui';
if (preg_match($pattern,$inputString,$matches) {
    $wantedData = $matches[1];
}

修改
如果你想从另一个提取一些字符串,这就是你使用的。但正如@Dagon注意到的,它是json,你可以使用其他函数来解析它。无论如何,我会留在上面,因为从另一个角度提取字符串的问题更为普遍。