使用環(huán)境:人才網(wǎng)項(xiàng)目中有一個(gè)簡歷保密設(shè)置,其中有一個(gè)過濾關(guān)鍵詞,只有某個(gè)企業(yè)的公司名中包含有其中的一個(gè)關(guān)鍵字,就不顯示該份簡歷,當(dāng)然,我還沒有做到那里去,現(xiàn)在是要做關(guān)鍵詞的增加刪除。
設(shè)想:不管一個(gè)人有多少份簡歷,所有簡歷都設(shè)置成一模一樣的關(guān)鍵詞過濾(主要是用的人也很少,所以這樣存儲無所謂,而且在搜索使用中很方便),然后將所有關(guān)鍵詞組成一個(gè)用半角逗號分隔的字符串。
難題:顯示的時(shí)候我將字符串轉(zhuǎn)化成數(shù)組然后再循環(huán)出來顯示,但是我現(xiàn)在就是要?jiǎng)h除指定的關(guān)鍵詞。
解決方案:既然轉(zhuǎn)化成了數(shù)組,那么有值就有鍵,我就將鍵傳到刪除頁面去,刪除指定鍵的值就好了嘛。
難題:怎么從數(shù)組中刪除指定鍵值呢,我只看到了過濾、入棧、出棧,沒有看到移除指定鍵值的內(nèi)置函數(shù)。
現(xiàn)在,這個(gè)函數(shù)已經(jīng)現(xiàn)身了,它叫array_splice,用它可以輕易的移除指定鍵的值,然后返回一個(gè)新的數(shù)組
代碼片斷:
復(fù)制代碼 代碼如下:
<?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']);//轉(zhuǎn)化成數(shù)組
array_splice($key,$autoid,1); //刪除指定鍵值
$key_secret=implode(",",$key); //轉(zhuǎn)化成便于存儲的字符串
?>
$autoid是傳過來的當(dāng)前值的鍵,array_splice($key,$autoid,1)的意思就是從$key的數(shù)組中,從$autoid開始移除,移除一組
array_splice本身是一個(gè)很強(qiáng)大的內(nèi)置函數(shù),可以用于數(shù)組與字符串的交換,數(shù)組與數(shù)組的交換,不懂看手冊