ThinkPHP中有一段源代碼:這個函數是對$_POST中的數據進行過濾。array_walk_recursive($_POST,'think_filter') ; //對數組成員遞歸應用think_filter函數。請問:在下面這個函數中,怎么體現過濾了?value匹配條件后,value后面連接一個空格就是過濾了?我覺得,應該是$value="";才對啊,ThinkPHP源碼中是.=,請大神說一下,這是什么意思?function?think_filter(&$value){
???//?TODO?其他安全過濾
???//?過濾查詢特殊字符
????if(preg_match('/^(EXP|NEQ|GT|EGT|LT|ELT|OR|XOR|LIKE|NOTLIKE)$/i',$value)){
????????$value?.=?'?';
????}
}
3 回答
一瞬兒光
TA貢獻178條經驗 獲得超70個贊
$arr?=?array(
????'a'?=>?1,
????'b'?=>?'LIKE'
)
$arr2?=?array(
????'a'?=>?1,
????'b'?=>?'LIKE?'
)
//這兩個數組一樣嗎?
sql??=?select?field?from?table?where?field_id?like?'%LIKE%';
sql2?=?select?field?from?table?where?field_id?like?'%LIKE?%';
//這兩個sql一樣嗎?
function?:?function?think_filter($value){}
function2:?function?think_filter(&$value){}
//這兩個function的參數一樣嗎?
//弄明白這三個的不同你就明白了。- 3 回答
- 0 關注
- 1501 瀏覽
添加回答
舉報
0/150
提交
取消
