解析array splice的移除数组中指定键的值,返回一个新的数组
作者:
array_splice这个数组函数在w3school的解释是把数组中的一部分去掉并用其它值取代。所以我在做数组移除的时候没有考虑到用这个函数,或者因为从来没有用过
使用环境:人才网项目中有一个简历保密设置,其中有一个过滤关键词,只有某个企业的公司名中包含有其中的一个关键字,就不显示该份简历,当然,我还没有做到那里去,现在是要做关键词的增加删除。
设想:不管一个人有多少份简历,所有简历都设置成一模一样的关键词过滤(主要是用的人也很少,所以这样存储无所谓,而且在搜索使用中很方便),然后将所有关键词组成一个用半角逗号分隔的字符串。
难题:显示的时候我将字符串转化成数组然后再循环出来显示,但是我现在就是要删除指定的关键词。
解决方案:既然转化成了数组,那么有值就有键,我就将键传到删除页面去,删除指定键的值就好了嘛。
难题:怎么从数组中删除指定键值呢,我只看到了过滤、入栈、出栈,没有看到移除指定键值的内置函数。
现在,这个函数已经现身了,它叫array_splice,用它可以轻易的移除指定键的值,然后返回一个新的数组
代码片断:
<?php
$sql="";
$sql.=" SELECT key_secret FROM ".T_."resume_relation_xuyinjie ";
$sql.=" WHERE 1=1 ";
$sql.=" AND userid ='".$userid."' ";
$result=@mysql_query($sql) or die('#41#');
$row=@mysql_fetch_array($result,MYSQL_ASSOC);
$key=explode(",",$row['key_secret']);//转化成数组
array_splice($key,$autoid,1); //删除指定键值
$key_secret=implode(",",$key); //转化成便于存储的字符串
?>
$autoid是传过来的当前值的键,array_splice($key,$autoid,1)的意思就是从$key的数组中,从$autoid开始移除,移除一组
array_splice本身是一个很强大的内置函数,可以用于数组与字符串的交换,数组与数组的交换,不懂看手册
设想:不管一个人有多少份简历,所有简历都设置成一模一样的关键词过滤(主要是用的人也很少,所以这样存储无所谓,而且在搜索使用中很方便),然后将所有关键词组成一个用半角逗号分隔的字符串。
难题:显示的时候我将字符串转化成数组然后再循环出来显示,但是我现在就是要删除指定的关键词。
解决方案:既然转化成了数组,那么有值就有键,我就将键传到删除页面去,删除指定键的值就好了嘛。
难题:怎么从数组中删除指定键值呢,我只看到了过滤、入栈、出栈,没有看到移除指定键值的内置函数。
现在,这个函数已经现身了,它叫array_splice,用它可以轻易的移除指定键的值,然后返回一个新的数组
代码片断:
复制代码 代码如下:
<?php
$sql="";
$sql.=" SELECT key_secret FROM ".T_."resume_relation_xuyinjie ";
$sql.=" WHERE 1=1 ";
$sql.=" AND userid ='".$userid."' ";
$result=@mysql_query($sql) or die('#41#');
$row=@mysql_fetch_array($result,MYSQL_ASSOC);
$key=explode(",",$row['key_secret']);//转化成数组
array_splice($key,$autoid,1); //删除指定键值
$key_secret=implode(",",$key); //转化成便于存储的字符串
?>
$autoid是传过来的当前值的键,array_splice($key,$autoid,1)的意思就是从$key的数组中,从$autoid开始移除,移除一组
array_splice本身是一个很强大的内置函数,可以用于数组与字符串的交换,数组与数组的交换,不懂看手册
您可能感兴趣的文章:
- php数组函数array_push()、array_pop()及array_shift()简单用法示例
- PHP array_shift()用法实例分析
- php通过array_shift()函数移除数组第一个元素的方法
- php中array_slice和array_splice函数解析
- PHP中unset,array_splice删除数组中元素的区别
- php数组函数序列之array_splice() - 在数组任意位置插入元素
- js利用Array.splice实现Array的insert/remove
- Array.slice()与Array.splice()的返回值类型
- php去掉数组的第一个值的两个函数:array_shift、array_splice