首頁 > 後端開發 > PHP問題 > php 是否在陣列中

php 是否在陣列中

PHPz
發布: 2023-05-23 11:42:37
原創
446 人瀏覽過

在進行 PHP 開發的過程中,常常會牽涉到陣列相關的操作,包括陣列的尋找、新增、修改、刪除等。其中,判斷一個元素是否存在於陣列中,是常見的操作之一。在 PHP 中,有多種方式可以判斷一個元素是否在陣列中。

一、使用 in_array() 函數

in_array() 函數可以判斷指定的元素是否存在於陣列中。其語法如下:

in_array($needle, $haystack, $strict)

其中,$needle 表示要找的元素,$haystack 表示要尋找的數組,$strict 表示是否啟用嚴格模式,如果啟用,則需要元素的類型與數組中的元素類型相同,並且值也要相同。

下面是一些實例:

1.判斷數字是否存在於陣列中

$nums = array(1, 2, 3, 4, 5);
if (in_array(3, $nums)) {

echo "存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製

} else {

echo "不存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製

}

輸出結果為:存在

#2.判斷字串是否存在於數組中

$fruits = array("apple", "banana", "orange");
if (in_array("banana", $fruits)) {

echo "存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製

} else {

echo "不存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製

}

輸出結果為:存在

3.判斷元素的型別是否相同

##$a = 1 ;

$b = "1";
$arr = array(1, "1");

if (in_array($a, $arr, true)) {

echo "存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製

} else {

echo "不存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製

}

if (in_array($b, $arr, true)) {

echo "存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製

} else {

echo "不存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製

}

輸出結果為:存在不存在

二、使用array_search() 函數

array_search() 函數可以找出指定元素在陣列中的位置,如果找到,則傳回該元素在數組中的索引,否則傳回false。其語法如下:

array_search($needle, $haystack, $strict)

其中,$needle 表示要找的元素,$haystack 表示要尋找的數組,$strict 表示是否啟用嚴格模式。

下面是一些實例:

1.找出數字在陣列中的位置

$nums = array(1, 2, 3, 4, 5);

$key = array_search(3, $nums);

if ($key !== false) {

echo "该元素在数组中的位置为:" . $key;
登入後複製
登入後複製

} else {

echo "不存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製

#}

輸出結果為:此元素在陣列中的位置為:2

2.找出字串在陣列中的位置

$fruits = array("apple", "banana" , "orange");

$key = array_search("banana", $fruits);

if ($key !== false) {

echo "该元素在数组中的位置为:" . $key;
登入後複製
登入後複製

#} else {

echo "不存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製

}

輸出結果為:此元素在陣列中的位置為:1

三、使用isset() 函數

isset() 函數可以用來判斷數組中是否存在指定的鍵。其語法如下:

isset($array[$key])

其中,$array 表示要判斷的數組,$key 表示要判斷的鍵。

下面是一個實例:

$fruits = array("apple" => 1, "banana" => 2, "orange" => 3);

if (isset($fruits["banana"])) {

echo "存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製

} else {

echo "不存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製

}

輸出結果為:存在

四、使用array_key_exists() 函數

array_key_exists() 函數可以判斷指定的鍵是否存在於陣列中。其語法如下:

array_key_exists($key, $array)

#其中,$key 表示要判斷的鍵,$array 表示要判斷的陣列。

下面是一個實例:

$fruits = array("apple" => 1, "banana" => 2, "orange" => 3);

if (array_key_exists("banana", $fruits)) {

echo "存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製

} else {

echo "不存在";
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
登入後複製
}

輸出結果為:存在

#綜上所述,PHP 提供了多種方式來判斷一個元素是否存在於陣列中。在實際開發中,可以根據具體情況選擇最適合的方法。

以上是php 是否在陣列中的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板