PHP字符串迭代重复值

时间:2014-03-03 14:34:50

标签: php string algorithm iteration

我有下一个字符串:

$string = "3-6M: 5, 60: 1;";

我需要做的是搜索重复项并迭代大小的值(即3-6M),或者在新大小时附加值。

实施例: 3-6M:5,60:1;我需要添加到字符串的下一个值是“3-6M:2”,如果我通过strpos搜索它会告诉我它存在,我怎么能用现有的值迭代以便我将在端

3-6M: 7, 60: 1;

附加内容在这里:

$size_f = $string;
$to_add[0] = "3-6M: 2";
if (strpos($size_f, $to_add[0])) {
// iterate
//echo "found";
} else {
// append
$size_f .= ", ".$to_add[0].":".$to_add[1];
}
你能帮帮我吗?

谢谢

1 个答案:

答案 0 :(得分:0)

如果您正在使用数组(您可以通过exploding字符串创建数组):

// Your existing array of values
$initialArray= array('3-6M: 7', '60: 1');

// Array of value you want to add
$newValues = array('3-6M: 2', 'toto', '3-6M: 2');

foreach($newValues as $newValue) {
  if (in_array($newValue, $initialArray)) {
    echo "found";
  } else {
    array_push($initialArray, $newValue);
  }
}

将打印:

foundarray(4) {
  [0]=>
  string(7) "3-6M: 7"
  [1]=>
  string(5) "60: 1"
  [2]=>
  string(7) "3-6M: 2"
  [3]=>
  string(4) "toto"
}

希望这个解决方案有所帮助。