概述
本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
方法1:使用array_search()+array_splice()
步骤1:使用array_search()函数在数组中搜索指定字符串,并返回对应的键名
array_search(value,array,strict)
登录后复制
参数 | 描述 |
---|---|
value | 必需。规定在数组中搜索的键值。 |
array | 必需。规定被搜索的数组。 |
strict | 可选。如果该参数被设置为 TRUE,则函数在数组中搜索数据类型和值都一致的元素。可能的值:
|
<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(10,"12",12,25,24);
echo "原数组:";
var_dump($arr);
$key=array_search("12",$arr,true);
echo "指定字符串'12'的键名为:".$key;
?>
登录后复制
步骤2:使用array_splice()函数根据获取的键名删除该元素
array_splice() 函数从数组中移除选定的元素(也可用新元素取代它)。
array_splice(array1,start,length,array2)
登录后复制
参数 | 描述 |
---|---|
array1 | 必需。规定数组。 |
start | 必需。数值。规定删除元素的开始位置。
0 = 第一个元素。
如果该值设置为正数,则从数组中该值指定的偏移量开始移除。如果该值设置为负数,则从数组末端倒数该值指定的偏移量开始移除。
-2 意味着从数组的倒数第二个元素开始。 |
length | 可选。数值。规定被移除的元素个数,也是被返回数组的长度。
如果该值设置为正数,则移除该数量的元素。如果该值设置为负数,则移除从 start 到数组末端倒数 length 为止中间所有的元素。如果该值未设置,则移除从 start 参数设置的位置开始直到数组末端的所有元素。 |
array2 | 可选。规定带有要插入原始数组中元素的数组。如果只有一个元素,则可以设置为字符串,不需要设置为数组。 |
说明:该函数会改变原数组
<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(10,"12",12,25,24);
echo "原数组:";
var_dump($arr);
$key=array_search("12",$arr,true);
echo "指定字符串'12'的键名为:".$key;
array_splice($arr,$key,1);
echo "<br><br>删除指定字符串'12'后:";
var_dump($arr);
?>
登录后复制
方法2:利用foreach语句+unset()函数
步骤1:使用foreach语句通过引用循环的方式遍历数组
foreach ($array as $key => &$value){
//循环体语句块;
}
登录后复制
遍历给定的 $array 数组,在每次循环中会将当前数组的值赋给 $value,键名赋给 $key。
步骤2:在循环体中,使用“===”运算符查找指定字符串,并用unset()函数删除该元素
if($value==="指定字符串"){
unset($arr[$key]);
}
登录后复制
完整示例代码:
<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(10,"25",12,25,"24");
echo "原数组:";
var_dump($arr);
foreach ($arr as $key => &$value){
if($value==="25"){
unset($arr[$key]);
}
}
echo "<br>删除指定字符串'25'后:";
var_dump($arr);
?>
登录后复制
可以看出,在最后一个元素前,有一个&,那是因为数组最后一个元素的 $value 引用在 foreach 循环之后仍会保留。我们需要使用unset() 来将其销毁。
unset($value); // 最后取消掉引用
登录后复制
推荐学习:《PHP视频教程》
以上就是php数组怎么去掉某个字符串的详细内容,更多请关注靠谱客其它相关文章!
最后
以上就是优美仙人掌为你收集整理的php数组怎么去掉某个字符串的全部内容,希望文章能够帮你解决php数组怎么去掉某个字符串所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复