1.轉義字元的使用
這個問題是在php下編寫sql語句的字串時遇到的,因為在where後面的條件判斷經常要用到雙引號("")來表示字元。而諸如下面這樣的語句就會報錯。
$query = "select * from where name = "zida"";
原因是雙引號的存在感太強了,最後兩個""會被誤認為少了連線符號的兩個字串。這個時候就需要轉義字元了。
轉義字元的使用也很簡單,就是\+內容。比如在這雙引號就是\"。其他的還有很多。不過要注意的是在單引號字串中只有反斜槓和單引號本身需要轉義。而在雙引號中由於美元符號($)表示變數名,其必須要用反斜槓轉義。雙引號的轉義字元還有回車、換行、製表符等。
2.heredoc和nowdoc結構
進一步尋找,可以使用heredoc 結構和nowdoc結構。他們兩的內容絕對不會進行任何的轉義和解釋,是什麼就是什麼,不會解析php相關的內容。
方法就是
echo <<< 識別符號
字串內容
識別符號;
需要注意的是後面這個結束標示符必須頂行寫。
再來還有nowdoc結構。就象 heredoc 結構類似於雙引號字串,nowdoc 結構是類似於單引號字串的。nowdoc 結構很象 heredoc 結構,但是 nowdoc 中不進行解析操作。這種結構很適合用於嵌入 php **或其它大段文字而無需對其中的特殊字元進行轉義。
有網友經驗,為了防止變數解析歧義,建議在這兩種字串中的php變數使用複雜語法(與之相對應的簡單語法就是加個$),就是用花括號。比如我們在輸出乙個物件的屬性是要用到$物件名->屬性名時,用花括號括住就不會產生歧義了。就像這樣。
3.訪問和修改字串中的字元
這個字串處理就比較簡單,就是把字串當成陣列。比如乙個字串$str中,$str[0]就表示第乙個字元。完畢
PHP初學留神 三
星期一進行面試結束後,意味著我的考研日子也結束了,以及我的 2013 在好好總結之後還不能停止學習,心想著要把演算法繼續學下去,還有 linux 不過呢,始終都要記住尼采老師的這句當頭棒喝 不加選擇的知識衝動,正如不分物件的性衝動,都是下流的標誌。嗯嗯,我們繼續。一.讀取資料庫亂碼問題 1天。糾結著...
初學php摘要 一
1.通過php鏈結mysql資料庫 定義 變數 hello hello helloworld 輸出變數hello echo hello 連線資料庫 dbconnection mysql connect localhost root lin 選擇表單 mysql select db test 設定編碼...
PHP學習之路(一) 初學PHP
其實我很早之前就學會了php啦。為什麼要寫呢?最近買了一台虛機。不寫浪費了。還是寫寫吧。php這門語言簡單易學,但還是很多人不會嘛。現在我就講講php吧。我們現在了解一下怎麼寫a b吧。a 100 b 200 echo a b 是乙個定義符號,相當於c 的int p 的 long int等。但是ph...