解析array splice的移除数组中指定键的值,返回一个新的数组

yipeiwu_com6年前PHP代码库
使用环境:人才网项目中有一个简历保密设置,其中有一个过滤关键词,只有某个企业的公司名中包含有其中的一个关键字,就不显示该份简历,当然,我还没有做到那里去,现在是要做关键词的增加删除。
设想:不管一个人有多少份简历,所有简历都设置成一模一样的关键词过滤(主要是用的人也很少,所以这样存储无所谓,而且在搜索使用中很方便),然后将所有关键词组成一个用半角逗号分隔的字符串。
难题:显示的时候我将字符串转化成数组然后再循环出来显示,但是我现在就是要删除指定的关键词。
解决方案:既然转化成了数组,那么有值就有键,我就将键传到删除页面去,删除指定键的值就好了嘛。
难题:怎么从数组中删除指定键值呢,我只看到了过滤、入栈、出栈,没有看到移除指定键值的内置函数。 
现在,这个函数已经现身了,它叫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数组的使用方法小结

一、什么是数组数组就是一组数据的集合,把一系列数据组织起来,形成一个可操作的整体。数组的每个实体都包含两项:键和值。二、声明数据在PHP中声明数组的方式主要有两种:一是应用array()...

header与缓冲区之间的深层次分析

测试header之前有输出 <?php echo 'hello world!'; header('content-type: text/html;charset=ut...

php 全文搜索和替换的实现代码

<?php  exec("/bin/grep -r '$oldword' $rootpath", $results, $...

php记录日志的实现代码

复制代码 代码如下: $ss_log_level = 0;   $ss_log_filename = /tmp/ss-log;   $ss_log_levels = array(   ...

elgg 获取文件图标地址的方法

过程如下: 首先,实体保存的时候用这个方法(系统本身的): 比如有一个Activity类,继承自ElggObject,创建了一个它的实例 activity, 复制代码 代码如下: //...