php项目中sql,php – 大括号{}在SQL查询中做了什么?
有關雙引號字符串語法,請參見
http://www.php.net/manual/de/language.types.string.php#language.types.string.parsing.
花括號用于復雜的變量表達式.它們由PHP解釋,而不是由SQL接口解釋.
$query = "SELECT * FROM users WHERE user='$_POST['username']' AND password='$_POST['password']'";
以上將導致解析錯誤.沒有花括號,你必須寫:
$query = "SELECT * FROM users WHERE user='$_POST[username]' AND password='$_POST[password]'";
注意缺少關鍵引號.這僅適用于簡單的數組訪問,以及簡單的對象屬性表達式.對于任何更復雜的東西,請使用花括號.
既然你知道這一點,做一個你永遠不會這樣做的小發誓.因為直接插入用戶輸入并不是一個好主意. http://bobby-tables.com/
但是為了給一個更復雜的卷曲字符串語法提供一個例子,這就是我要做的:
$query = "SELECT * FROM users WHERE user={$_POST->id->sql['username']}";
(有些內聯過濾和引用.就像示例一樣,不適用于默認的PHP設置.)
總結
以上是生活随笔為你收集整理的php项目中sql,php – 大括号{}在SQL查询中做了什么?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 培训学校计算机助教是干嘛的,【助教】的意
- 下一篇: python读取csv画图datetim