-1
我在網上找到了這段代碼,我想了解它。我已閱讀PHP文檔,但我發現,該堆棧溢出社區提供更好的解釋:我需要了解此代碼
function mysql_safe_query($query) {
$args = array_slice(func_get_args(),1);
$args = array_map('mysql_safe_string',$args);
return mysql_query(vsprintf($query,$args));
}
我的數字函數不是內建PHP函數。 array_slice
從數組func_get_args返回一個偏移量爲1的元素序列。
我擡頭看了func_get_args
,它應該返回給定元素(數組?對象)的副本?我想vsprintf
返回一個格式化的字符串,刪除字符串引號「'?
有關內部PHP函數將執行的所有問題將在http://php.net上得到解答 - 請在閱讀手冊後回來,並留下任何問題。 – Sven
調用類似於'mysql_safe_query(「SELECT name,age FROM tbl WHERE name ='%s'」,$ input_name)''的函數,並且得到'vsprintf(「SELECT name,age FROM tbl WHERE name ='%s' mysql_safe_string($ input_name))'。該函數用於避免SQL注入,而不必重複鍵入'mysql_safe_string'。 –
閱讀手冊,使用測試腳本中的函數進行操作,並逐行處理。如果有人向你解釋,你會說「好極了」,然後必須繼續努力。要點是,你必須投入運動,人們只能解釋這麼多。 – Ben