解析array splice的移除数组中指定键的值,返回一个新的数组_PHP
- WBOY원래의
- 2016-06-01 12:05:271124검색
使用环境:人才网项目中有一个简历保密设置,其中有一个过滤关键词,只有某个企业的公司名中包含有其中的一个关键字,就不显示该份简历,当然,我还没有做到那里去,现在是要做关键词的增加删除。
设想:不管一个人有多少份简历,所有简历都设置成一模一样的关键词过滤(主要是用的人也很少,所以这样存储无所谓,而且在搜索使用中很方便),然后将所有关键词组成一个用半角逗号分隔的字符串。
难题:显示的时候我将字符串转化成数组然后再循环出来显示,但是我现在就是要删除指定的关键词。
解决方案:既然转化成了数组,那么有值就有键,我就将键传到删除页面去,删除指定键的值就好了嘛。
难题:怎么从数组中删除指定键值呢,我只看到了过滤、入栈、出栈,没有看到移除指定键值的内置函数。
现在,这个函数已经现身了,它叫array_splice,用它可以轻易的移除指定键的值,然后返回一个新的数组
代码片断:
复制代码 代码如下:
$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本身是一个很强大的内置函数,可以用于数组与字符串的交换,数组与数组的交换,不懂看手册
성명:본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.