PHP foreach是数据字符串的集合
我有一个字符串包含多个PHP foreach是数据字符串的集合,php,Php,我有一个字符串包含多个块数据字符串,我想将它们中的每一个解析为一个单独的文件 下面是字符串的一个示例: [ ['test', 'lol'], ['test2', 'lol2'] ] [ ['test32', 'loDl'], ['test32', 'loDl2'] ] [ ['tes23t', 'loDEl'], ['testDE2', 'lolDE2'] ] 我想像这样改变一切 [ ['foo', 'bar'], ... ]
块数据
字符串,我想将它们中的每一个解析为一个单独的文件
下面是字符串的一个示例:
[
['test', 'lol'],
['test2', 'lol2']
]
[
['test32', 'loDl'],
['test32', 'loDl2']
]
[
['tes23t', 'loDEl'],
['testDE2', 'lolDE2']
]
我想像这样改变一切
[
['foo', 'bar'],
...
]
排列
我尝试过的:使用explode和foreach
<?php
$list = "[
['test', 'lol'],
['test2', 'lol2']
]
[
['test32', 'loDl'],
['test32', 'loDl2']
]
[
['tes23t', 'loDEl'],
['testDE2', 'lolDE2']
]";
$arr = explode("\n", $list);
foreach ($arr as $value) {
if($value == "]") {
echo "accepted: $value newline<br>";
} else {
echo "refused: $value newline<br>";
}
}
?>
那么,如何将每个
块数据字符串解析为一个数组呢?谢谢在结尾使用preg_split
。
:
$list = file_get_contents('RN7rK');
$jsons = preg_split('/\]\s*(?=\[)/', $list, null);
foreach ($jsons as $json) {
$json .= ']';
print_r(json_decode($json));
}
在结尾处使用preg\u split
。
:
$list = file_get_contents('RN7rK');
$jsons = preg_split('/\]\s*(?=\[)/', $list, null);
foreach ($jsons as $json) {
$json .= ']';
print_r(json_decode($json));
}
请阅读,这不是一个免费的编码或辅导服务,你必须表明你已经做出了一些努力来解决你自己的问题。只是一个小问题,这不是一个有效的JSON字符串。请更具体地说明此字符串的实际外观like@RiggsFollyPost edited请阅读,这不是免费的编码或教程服务,你必须表明你已经为解决自己的问题做出了一些努力。只是一个小问题,这不是一个有效的JSON字符串。请更具体地说明此字符串的实际外观like@RiggsFollyPost edited您的解决方案是有效的,但是如果像那样的
[“lol”,“xd”“haha”]
中的值的数量不起作用,那么我如何才能使它适用于任何数量的值呢?您能发布更多的示例吗,数字和单引号与双引号的关系这里有一个包含大量值PS的代码示例:我只需要10个第一个值,我知道这是一个有效的json,但在我拥有的字符串中有很多这样的字符串,所以我如何将它们分开,以生成大量有效的json?然后我将对foreach和json进行解码您的解决方案正在运行,但是如果像那样的[“lol”,“xd”“haha”]
中的值的数量不起作用,那么我如何才能使它对任意数量的值起作用呢?您能发布更多的示例吗,数字和单引号与双引号的关系这里有一个包含大量值PS的代码示例:我只需要10个第一个值,我知道这是一个有效的json,但在我拥有的字符串中有很多这样的字符串,所以我如何将它们分开,以生成大量有效的json?然后我将对它们进行foreach和json解码