1. 程式人生 > >PHP資料加密技術之一---URL編碼加密技術

PHP資料加密技術之一---URL編碼加密技術

               

URL編碼加密技術

urlencode,urldecode這兩個函式相對立,urlencode對資料進行編碼加密,urldecode對資料進行編碼解密。

其中urlencode的函式具體內容如下:

string urlencode ( string $str )

str

要編碼的字串。 

 

返回值:

返回字串,此字串中除了 -_. 之外的所有非字母數字字元都將被替換成百分號(%)後跟兩位十六進位制數,空格則編碼為加號(+)。此編碼與 WWW 表單 POST 資料的編碼方式是一樣的,同時與 application/x-www-form-urlencoded 的媒體型別編碼方式一樣。由於歷史原因,此編碼在將空格編碼為加號(+)方面與 RFC3896 編碼(參見 rawurlencode())不同。 

 

urlencode的主要作用:

一,通常用於明文資料的隱藏

<?php
$url 'admin.php?act=zhongguo&tx=123';
echo urlencode($url);
?>

 

admin.php%3Fact%3Dzhongguo%26tx%3D123

=> %3F

= => %3D

% => %25

& => %26

\ => %5C

urlencode()會對字串進行編碼,至於是針對於哪些字元進行特殊編碼,在上面對

urlencode函式介紹的時候已經提過。

 

二,針對GET提交資料進行編碼

也許大家沒有遇到過如下這種情況:

admin.php?act=del&add&data=abcd

看到這裡,大家也許開始吐槽了, 阿西吧!這個東西什麼玩意actdel還是del&add。怎麼辦,這裡我們就可以用URL編碼去處理這個問題,對del&add進行編碼就可以使act可以等於del&add,

 

<?php
$str 'del&add';
$url 'admin.php?act='.urlencode($str).'&data=abcd';
echo $url;
?>

 

admin.php?act=del%26add&data=abcd

這樣就可以得到我們想要傳輸的資料了,如此就可以分得非常清楚了

 

然後就是urldecode

string urldecode ( string $str )

只是對urlencode編碼的資料進行解密

還有就是rawurlencode()以及rawurldecode()函式,他們只是對字元編碼的結果有所不同。

他們兩個使用後返回的字串,此字串中百分號(%)後跟著兩個十六進位制數的序列都將被替換成原義字元。

 

            

再分享一下我老師大神的人工智慧教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智慧的隊伍中來!https://blog.csdn.net/jiangjunshow