首页 > 解决方案 > PHP 删除以“|”分隔的字符串中低于给定值的值

问题描述

我有这个价值:

$numbers= "|800027|800036|800079|800097|800134|800215|800317|800341|800389"

我想删除低于 800130 的值,包括起始“|”。我想这是可能的,但我在任何地方都找不到任何例子。如果有人能指出我正确的方向,我将不胜感激。

标签: php

解决方案


您可以在管道上拆分输入字符串,然后删除所有数组元素,这些元素在转换为数字时小于800130. 然后,重新组合成管道分隔的字符串。

$input= "|800027|800036|800079|800097|800134|800215|800317|800341|800389";
$input = ltrim($input, '|');
$numbers = explode("|", $input);
$array = [];
foreach ($numbers as $number) {
    if ($number >= 800130) array_push($array, $number);
}
$output = implode("|", $array);
echo "|" . $output;

这打印:

|800134|800215|800317|800341|800389

推荐阅读