我使用php爆炸了一个文本文件。我的目标是根据值检查每个字符串,如果该值存在于“爆炸字符串”中,则重新分配值:
我正在检查的价值:“AM,B,L,PM” 目标:将所有爆炸的“ AM,B,L,PM ”字符串转换为此“AM,B,L”
伪逻辑:
if ($pieces[2] = "AM,B,L,PM")
{
$pieces[2] = "AM,B,L"
}
以上代码适用于单个 $ pieces [2] ,但我想检查所有$件, $件[3],$件[4],$件[ 5]
请告知
答案 0 :(得分:1)
试试这个
$l = count($pieces);
for($x=0;$l<$x;$x++) {
if ($pieces[$x] == "AM,B,L,PM") {
$pieces[$x] = "AM,B,L";
}
}
或
$l = count($pieces);
for($x=0;$l<$x;$x++) {
$a = preg_replace("/[^a-zA-Z]/", "", $pieces[$x]);
if ($a == "AMBLPM") {
$pieces[$x] = "AM,B,L";
}
}
答案 1 :(得分:0)
您可以使用foreach
循环数组,如果条件为true
,请为原始数组指定值,最后再次在string
中转换数组。< / p>
foreach ($pieces as $key => $piece) {
if (trim($piece) == "AM,B,L,PM") {
$pieces[$key] = "AM,B,L";
}
}
// In the first parameter you put the delimiter you used to explode the string
$string = implode(' ', $pieces);
答案 2 :(得分:0)
$ string = str_replace(&#39; AM,B,L,PM&#39;,&#39; AM,B,L&#39;,$ pieces);
echo $ string [370];
解决。谢谢大家