如何在php中添加字符串之前检查字符串是否已存在?
说数组是$value
$value[0]="hi";
$value[1]="hello";
$value[2]="wat";
我想在将其添加到其中之前检查其中是否存在值。
答案 0 :(得分:4)
$s='hi';
if (!in_array($s, $value)) {
$value[]=$s;
}
in_array()
检查该值(第一个参数)是否在数组中(第二个参数),返回布尔值(!
否定它)
$value[]=$s
会将值添加到具有下一个索引的数组
如果你想在数组中添加一堆值,还有另一种棘手的方法,但前提是它们还没有。您只需将这些新值组织到另一个数组中,并使用array_merge()
和array_diff()
的组合:
//your original array:
$values=array('hello', 'xy', 'fos', 'hi');
//the values you want to add if they are not in the array yet:
$values_to_add=array('hi', 'hello', 'retek');
$values=array_merge($values, array_diff($values_to_add, $values));
//$values becomes: hello, xy, fos, hi, retek
答案 1 :(得分:2)
您可以使用in_array($searchstring, $array)
in_array("hello", $value)
返回true
in_array("hllo", $value)
返回false
答案 2 :(得分:1)
http://php.net/manual/en/function.in-array.php
if(in_array("hello", $value)) { // needle in haystack
return TRUE;
}
答案 3 :(得分:1)
in_array - 检查数组中是否存在值。
如果是in_array($searchstring, $array)
,请记住,如果$searchstring
是“字符串”,那么比较是以 区分大小写的 方式完成的“
示例:
- in_array("wat", $value) returns true
- in_array("what", $value) returns false.
// Observe carefully
- in_array("WAT", $value) returns false.
答案 4 :(得分:1)