国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

淺談PHP源碼二十三 :關于urlencode函數

2020-03-22 17:57:38
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了關于淺談PHP 源碼二十三 :關于urlencode函數,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

 

淺談PHP 源碼二十三 :關于urlencode函數

有一段時間沒有看PHP的源碼了,最近一直在看以前買的書,有一些書已經看過一遍了,但是事隔一年又有不同的感受

urlencode函數在開發的過程中經常有遇到,它作用于字符串編碼并將其用于 URL 的請求部分
urlencode函數的作用是編碼 URL 字符串
string urlencode ( string str )
返回字符串,此字符串中除了 -_. 之外的所有非字母數字字符都將被替換成百分號(%)后跟兩位十六進制數,空格則編碼為加號(+)。此編碼與 WWW 表單 POST 數據的編碼方式是一樣的,同時與 application/x-www-form-urlencoded 的媒體類型編碼方式一樣。由于歷史原因,此編碼在將空格編碼為加號(+)方面與 RFC1738 編碼(參見 rawurlencode())不同。
在standard/url.c文件的493行,可以看到此函數的實現

 out_str = php_url_encode(in_str, in_str_len, out_str_len);RETURN_STRINGL(out_str, out_str_len, 0);

在查看php_url_encode函數時,我糾結了好一段時間,因為它有一個#ifndef CHARSET_EBCDIC的編譯判斷,我一直將#ifndef看成了#ifdef,導致理解起來怪怪的

php_url_encode函數是一個遍歷整個字符串,并針對每個字符進行替換的過程,
對于除了 -_. 之外的所有非字母數字字符都將被替換成百分號(%)后跟兩位十六進制數,
此處在編譯時有針對EBCDIC編碼的處理

空格則編碼為加號(+)(
if (c == ‘ ‘) {
*to++ = ‘+’;
}

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP !

相關推薦:

淺談PHP源碼二十一:關于array_slice函數

淺談PHP源碼二十二:關于array_splice函數

以上就是淺談PHP 源碼二十三 :關于urlencode函數的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 邹平县| 灵丘县| 呼伦贝尔市| 泌阳县| 江山市| 彭山县| 滕州市| 耿马| 安义县| 偏关县| 荥经县| 西林县| 汝南县| 临沭县| 金门县| 潜江市| 萍乡市| 新安县| 长宁区| 山西省| 弥勒县| 文安县| 武隆县| 泰顺县| 昌邑市| 旌德县| 普定县| 盘锦市| 黎川县| 嘉峪关市| 平原县| 宝山区| 美姑县| 大荔县| 定结县| 称多县| 通化县| 体育| 同江市| 武鸣县| 武鸣县|