PHP教學系列(九)-字串

(八)字串加密

一般常用的加密法有DES和MD5加密,這兩種加密法算是較安全的加密技術,在PHP有內建幾種加密的函式,可快速的對資料進行DES或MD5…等類型加密。

加密法名稱 函式 說明
DES加密法 crypt(字串,加密暗碼) 使用後會將字串,以DES編碼輸出。
MD5加密法 MD5(字串) 使用後會將字串,以MD5雜湊值輸出。
sha1加密法 sha1(字串) 使用後會將字串,以sha1雜湊值輸出。

加密範例:

實際範例:example-9-1.php

驗證密碼

現在的加密法通常為不可還原,且演算法複雜。只能透過程式去比對驗證密碼。

1.DES加密法密碼驗證:

實際範例:example-9-2.php

2.MD5加密法驗證

實際範例:example-9-3.php

 3.sha1加密法驗證

實際範例:example-9-4.php

(九)正規表示式

說明:可用來快速搜尋正確又符合條件的資訊或用來驗證格式,例如:日期、電話、E-mail…等。
格式:

/正規表示式/

基本規則:

(1).允許的字元

只允許包含abcd字元。

/[abcd]/

(2).不允許的字元

字串內不允許出現e、f、g字元。

/[^efg]/

正規表示式:

格式 說明
[a-z] 字串符合小寫英文字母。
[A-Z] 字串符合大寫英文字母。
[a-zA-Z] 字串符合大小寫英文字母。
[0-9] 字串符合所有數字。
[abc] 字串只允許由符合的字元組成。
[^efg] 字串內不允許出現的字元。
[u4e00-u9fa5] 字串符合中文字元。

正規表示式特殊代稱:

格式 說明
\s 表示空白字元。
\S 表示非空白字元。
\d 表示所有數字。 同 [0-9]
\D 表示非數字。
\w 表示所有字母和數字。[a-zA-Z0-9]
\W 表示所有非字母和數字。

正規表示式起始、結尾、萬用字元:

格式 說明
^字元^[允許的字元] 檢查起始字元。
字元$[允許的字元]$ 檢查結尾字元。
. 表示萬用字元。

範例:

/[abc]/ 只允許字串使用a、b、c字母組成。

/[^efg]/ 不允許字串使用e、f、g字母。

/[a-z]/ 允許字串使用全部小寫英文字母。

/[a-zA-Z0-9]/ 允許使用全部英文字母和數字。

d{5} 需有指定數量的字元,最少要有5個d。

^a 起始字元一定要是a。

^[abcd] 起始字元可以是a、b、c、d。

e$ 結束字元一定要是e。

[efgh] 結束字元可以是e、f、g、h。

/^C.t$/ 表示起始字元為大寫C,結尾為小寫t,中間可以是任意字元。 (Cat 、Count…)

常見的檢查格式:

1.檢查附檔名(為txt或doc):

/^([a-zA-Z0-9]\.(txt|doc))$/

2.檢查電子郵件

/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/

3.檢查行動電話號碼

/^\d{4}-\d{3}-\d{3}$/

4.檢查HTML標籤

/<(.*)>.*<\/\1>|<(.*) \/>/

5.檢查日期(MM/DD/YYYY)

/^((0?[1-9]|1[012])[- /.](0?[1-9]|[12][0-9]|3[01])[- /.](19|20)?[0-9]{2})*$/

正規表示式函式:

1.preg_match() 正規表示法檢查格式:

格式:

preg_match(正規表示式格式,字串,符合結果)

 範例:

實際範例:example-9-5.php

2.preg_replace() 正規表示法字串取代

格式:

preg_replace(正規表示法格式,取代內容,字串)

範例:

實際範例:example-9-6.php

感謝您的閱讀,請用力地分享讓大家知道吧~~

1 2 3

Aidec Li
學我所見,寫我所學。凡事略懂略懂~~
更多 Aidec Li 的文章...

很抱歉,此文章關閉留言