1.關於array_search 與 unset
原始程式碼:
public function appViewUnread($uid, $id) { $userNewRepyKey = Config_CacheKey::USER_QUESTION_NEW_REPLY.$uid; $userNewReply = $this->appGetUserNewReply($uid); $key = array_search($id, $userNewReply); unset($userNewReply[$key]); $this->redis->set($userNewRepyKey, serialize($userNewReply)); }
UG分析:如果array_f到結果,則回傳false ,那麼unset($userNewReply[false]) 就等同於unset($userNewRrply[0]) ,此時會將數組第一個元素刪除。
更熏後的程式碼:
public function appViewUnread($uid, $id) { $userNewRepyKey = Config_CacheKey::USER_QUESTION_NEW_REPLY.$uid; $userNewReply = $this->appGetUserNewReply($uid); $key = array_search($id, $userNewReply); if($key != false) { unset($userNewReply[$key]); $this->redis->set($userNewRepyKey, serialize($userNewReply)); } }
以上就介紹了2016年1月06日 bug庫2016-06-16,包括了2016年1月06日方面的內容,希望對PHP教程有興趣的朋友有所幫助。