我們有一個數組的搜索,例如:PHP在陣列
$my_array = array('Software Engineering', 'Civil Engineering', 'Hardware Engineering', 'BL AH Engineering');
現在我有一個「$ Q」變量,我想數組的值之間進行搜索,刪除不包含密鑰$ q,這裏是我的代碼:
foreach($my_array as $key => &$value){
if (stripos(($value), $q) === false){
unset($my_array[$key]);
}
}
現在如果我們設置$ q = '能效比':
var_dump($my_array);
array
0 => string 'Software Engineering' (length=20)
1 => string 'Civil Engineering' (length=17)
2 => string 'Hardware Engineering' (length=20)
3 => &string 'BL AH Engineering' (length=17)
正如你看到的,沒有被刪除,因爲所有的$值有 '能效比'在「工程」 它是確定的,但現在我設置$q = 'eer civil'
,現在:
var_dump($my_array);
array
empty
所有項目被刪除,但實際上「土木工程」既包含了「能效比」和「民間」的,所以應該不會被刪除,我怎麼能做到這一點?我可能用'空格'來爆炸$ q,但它不起作用。
在此先感謝
向我們展示您使用的代碼s'explode' – Petah