배열에 특정 값이 php에 포함되어 있는지 확인하려면 어떻게 해야 합니까?
저는 Array 타입의 PHP 변수를 가지고 있는데, 그 변수가 특정 값을 포함하고 있는지 알아보고 사용자에게 그것이 존재함을 알리고 싶습니다.다음은 제 어레이입니다.
Array ( [0] => kitchen [1] => bedroom [2] => living_room [3] => dining_room)
저는 이렇게 하고 싶어요
if(Array contains 'kitchen') {echo 'this array contains kitchen';}
상기의 가장 좋은 방법은 무엇입니까?
함수를 사용합니다.
$array = array('kitchen', 'bedroom', 'living_room', 'dining_room');
if (in_array('kitchen', $array)) {
echo 'this array contains kitchen';
}
// Once upon a time there was a farmer
// He had multiple haystacks
$haystackOne = range(1, 10);
$haystackTwo = range(11, 20);
$haystackThree = range(21, 30);
// In one of these haystacks he lost a needle
$needle = rand(1, 30);
// He wanted to know in what haystack his needle was
// And so he programmed...
if (in_array($needle, $haystackOne)) {
echo "The needle is in haystack one";
} elseif (in_array($needle, $haystackTwo)) {
echo "The needle is in haystack two";
} elseif (in_array($needle, $haystackThree)) {
echo "The needle is in haystack three";
}
// The farmer now knew where to find his needle
// And he lived happily ever after
in_array 참조
<?php
$arr = array(0 => "kitchen", 1 => "bedroom", 2 => "living_room", 3 => "dining_room");
if (in_array("kitchen", $arr))
{
echo sprintf("'kitchen' is in '%s'", implode(', ', $arr));
}
?>
어레이에서 검색 알고리즘을 사용해야 합니다.사용하시는 어레이의 크기에 따라 사용할 수 있는 어레이는 다양합니다.또는 다음 기본 제공 기능 중 하나를 사용할 수 있습니다.
http://www.w3schools.com/php/php_ref_array.asp
http://php.net/manual/en/function.array-search.php
http://php.net/manual/en/function.in-array.php 에서
bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )
엄격하지 않은 한 느슨한 비교를 사용하여 건초더미에서 바늘을 검색합니다.
if (in_array('kitchen', $rooms) ...
배열 검색에 동적 변수 사용
/* https://ideone.com/Pfb0Ou */
$array = array('kitchen', 'bedroom', 'living_room', 'dining_room');
/* variable search */
$search = 'living_room';
if (in_array($search, $array)) {
echo "this array contains $search";
} else
echo "this array NOT contains $search";
그 방법은 다음과 같습니다.
<?php
$rooms = ['kitchen', 'bedroom', 'living_room', 'dining_room']; # this is your array
if(in_array('kitchen', $rooms)){
echo 'this array contains kitchen';
}
반드시 키친이 아닌 키친을 검색해 주세요.이 함수는 대소문자를 구분합니다.따라서 다음 기능은 작동하지 않습니다.
$rooms = ['kitchen', 'bedroom', 'living_room', 'dining_room']; # this is your array
if(in_array('KITCHEN', $rooms)){
echo 'this array contains kitchen';
}
이 검색의 케이스에 영향을 주지 않는 빠른 방법을 원하시면 다음 답변에서 제안된 솔루션을 참조하십시오.https://stackoverflow.com/a/30555568/8661779
출처 : http://dwellupper.io/post/50/understanding-php-in-array-function-with-examples
언급URL : https://stackoverflow.com/questions/8881676/how-can-i-check-if-an-array-contains-a-specific-value-in-php
'programing' 카테고리의 다른 글
MySQL에서 null을 0으로 바꿉니다. (0) | 2022.10.10 |
---|---|
Java에서 최적의 동시 실행 목록 선택 (0) | 2022.10.10 |
생성자 표현식 vs. 목록 통합 (0) | 2022.10.10 |
python을 사용하여 어레이 셔플, python을 사용하여 어레이 항목 순서 랜덤화 (0) | 2022.10.10 |
Nuxt, composition-api(vue2) 및 SSR에서 Pinia를 사용하는 방법 (0) | 2022.10.10 |