PHP8中查詢數(shù)組中指定元素-PHP8知識(shí)詳解
導(dǎo)讀:我們用到了下列方法來查詢數(shù)組中指定的元素:使用array_search()函數(shù)、使用array_column()函數(shù)、使用in_array()函數(shù)、使用array_key_exists()函數(shù)、使用isset()函數(shù)等。
永久美國(guó)免備案虛擬主機(jī)1元1天,15元1月,100元1年,1000元永久
站長(zhǎng)在線旗下答案網(wǎng)站,全站所有題目,免費(fèi)查看答案和答案解析
PHP是使用最廣泛的web編程語言,數(shù)組是一個(gè)數(shù)據(jù)集合,數(shù)組是一種非常常用的數(shù)據(jù)類型。在操作數(shù)組時(shí),有時(shí)我們需要查詢數(shù)組中是否有某個(gè)指定元素。在實(shí)際的程序開發(fā)中,我們用到了下列方法來查詢數(shù)組中指定的元素:使用array_search()函數(shù)、使用array_column()函數(shù)、使用in_array()函數(shù)、使用array_key_exists()函數(shù)、使用isset()函數(shù)等。
1、使用array_search()函數(shù)查詢數(shù)組中指定元素
使用array_search()函數(shù)查詢數(shù)組中指定元素,如果存在則返回鍵名,否則返回false。語法格式如下:
array_search(要查找的值, 數(shù)組, 是否使用全等比較);
參考代碼:
<?php
$s = "php";
$study = array("s1"=>"html", "s2"=>"css", "s3"=>"php", "s4"=>"mysql");
$key = array_search($s, $study);
if ($key !== false) {
echo "學(xué)習(xí)的課程已經(jīng)找到,編號(hào)為:".$key;
} else {
echo "搜索完畢,沒有找到需要的課程!";
}
?>
以上代碼在php8中運(yùn)行的結(jié)果為:
學(xué)習(xí)的課程已經(jīng)找到,編號(hào)為:s3
這樣,如果搜索成功,將打印課程的編號(hào),否則將打印未找到的消息。
2、使用array_column()函數(shù)來查詢數(shù)組中指定元素
在PHP 8中,你可以使用array_column()函數(shù)來查詢數(shù)組中指定元素。該函數(shù)從二維數(shù)組中獲取指定鍵的所有值,并返回一個(gè)新的一維數(shù)組。
以下是使用array_column()函數(shù)查詢數(shù)組中指定元素的示例代碼:
<?php
$students = [
['name' => '明明', 'age' => 20],
['name' => '紅紅', 'age' => 25],
['name' => '亮亮', 'age' => 30]
];
// 查詢所有學(xué)生的名字
$names = array_column($students, 'name');
echo "<pre>";
print_r($names);
// 查詢年齡大于25歲的學(xué)生的名字和年齡
$filteredStudents = array_filter($students, function ($student) {
return $student['age'] > 25;
});
// 提取年齡大于25歲學(xué)生的名字
$filteredNames = array_column($filteredStudents, 'name');
echo "<pre>";
print_r($filteredNames);
?>
以上代碼在PHP8中的運(yùn)行結(jié)果如下:
Array
(
[0] => 明明
[1] => 紅紅
[2] => 亮亮
)
Array
(
[0] => 亮亮
)
3、使用in_array()函數(shù)來查詢數(shù)組中指定元素
PHP中提供了in_array()函數(shù),其作用是在數(shù)組中搜索指定的值。如果找到了該值,則返回TRUE,否則返回FALSE。
in_array()函數(shù)的語法如下:
in_array(要查找的元素, 要查詢的數(shù)組, 是否使用嚴(yán)格模式)
嚴(yán)格模式表示數(shù)據(jù)類型也要匹配,而非嚴(yán)格模式只匹配值。因此,在數(shù)組查詢中,我們通常使用非嚴(yán)格模式。
例如,我們有一個(gè)數(shù)組$a,包含元素"html"、"css"、"php",現(xiàn)在我們要查詢是否存在元素"php"。代碼如下:
<?php
$a = array("html", "css", "php");
if (in_array("php", $a)) {
echo "存在";
} else {
echo "不存在";
}
?>
以上代碼在PHP8中運(yùn)行的結(jié)果為:
存在
4、使用array_key_exists()函數(shù)來查詢數(shù)組中指定元素
如果我們只需要查詢一個(gè)數(shù)組中是否存在指定的鍵名,而不關(guān)心其對(duì)應(yīng)的元素值,可以使用PHP中提供的array_key_exists()函數(shù)。
array_key_exists()函數(shù)的語法如下:
array_key_exists(鍵名, 數(shù)組)
參考代碼:
<?php
$c = array("1"=>"html", "2"=>"css", "3"=>"php");
if (array_key_exists("3", $c)) {
echo "存在";
} else {
echo "不存在";
}
?>
以上代碼,在PHP8中的運(yùn)行結(jié)果如下:
存在
5、使用isset()函數(shù)來查詢數(shù)組中指定元素
此外,在PHP中還可以使用isset()函數(shù)來查詢數(shù)組中是否存在指定元素。isset()函數(shù)判斷變量是否已定義且非空。
isset()函數(shù)的語法如下:
isset(數(shù)組[索引])
其中,$array表示要查詢的數(shù)組,$key表示要查找的元素。
例如,我們有一個(gè)數(shù)組$d,包含元素"php"、"mysql"、"html",現(xiàn)在我們要查詢是否存在元素"php"。代碼如下:
<?php
$d = array("php", "mysql", "html");
if (isset($d[0])) {
echo "存在";
} else {
echo "不存在";
}
?>
以上代碼在PHP8中的運(yùn)行結(jié)果如下:
存在
到這為止,使用array_search()函數(shù)、使用array_column()函數(shù)、使用in_array()函數(shù)、使用array_key_exists()函數(shù)、使用isset()函數(shù)來查詢數(shù)組中指定元素就講解完畢了。
本文地址:http://003188.cn/php8zhongchaxunshuzuzhongzhidingyuansu.html
阿里云虛擬主機(jī)1G空間,120元一年
香港、美國(guó)虛擬主機(jī)100元一年,1000元永久
騰訊云雙十一0.4折起,2核8G5M三年僅700元,2核4G8M三年僅198元
猜你喜歡