PHP常见函数总结
mysql_connect
- 定義和用法
mysql_connect() 函數(shù)打開非持久的 MySQL 連接。 - 語(yǔ)法
- 返回值
如果成功,則返回一個(gè) MySQL 連接標(biāo)識(shí),失敗則返回 FALSE。 - 提示和注釋
注釋:腳本一結(jié)束,到服務(wù)器的連接就被關(guān)閉,除非之前已經(jīng)明確調(diào)用 mysql_close() 關(guān)閉了。
提示:要?jiǎng)?chuàng)建一個(gè)持久連接,請(qǐng)使用 mysql_pconnect() 函數(shù)。 - 例:
mysql_error()
-
定義和用法
mysql_error() 函數(shù)返回上一個(gè) MySQL 操作產(chǎn)生的文本錯(cuò)誤信息。
本函數(shù)返回上一個(gè) MySQL 函數(shù)的錯(cuò)誤文本,如果沒有出錯(cuò)則返回 ‘’(空字符串)。 -
語(yǔ)法
- 例:
mysql_query
- 語(yǔ)法:
- 說(shuō)明
如果沒有打開的連接,本函數(shù)會(huì)嘗試無(wú)參數(shù)調(diào)用 mysql_connect()函數(shù)來(lái)建立一個(gè)連接并使用之。 - 返回值
mysql_query()僅對(duì) SELECT,SHOW,EXPLAIN 或 DESCRIBE 語(yǔ)句返回一個(gè)資源標(biāo)識(shí)符,如果查詢執(zhí)行不正確則返回 FALSE。
對(duì)于其它類型的 SQL 語(yǔ)句,mysql_query()在執(zhí)行成功時(shí)返回 TRUE,出錯(cuò)時(shí)返回 FALSE。
非 FALSE 的返回值意味著查詢是合法的并能夠被服務(wù)器執(zhí)行。這并不說(shuō)明任何有關(guān)影響到的或返回的行數(shù)。很有可能一條查詢執(zhí)行成功了但并未影響到或并未返回任何行。 - 提示和注釋
注釋:該函數(shù)自動(dòng)對(duì)記錄集進(jìn)行讀取和緩存。如需運(yùn)行非緩存查詢,請(qǐng)使mysql_unbuffered_query()
例
mysql_close()
- 定義和用法
mysql_close() 函數(shù)關(guān)閉非持久的 MySQL 連接。 - 語(yǔ)法
- 說(shuō)明
本函數(shù)關(guān)閉指定的連接標(biāo)識(shí)所關(guān)聯(lián)的到 MySQL 服務(wù)器的非持久連接。如果沒有指定 link_identifier,則關(guān)閉上一個(gè)打開的連接。 - 返回值
如果成功則返回 true,失敗則返回 false。 - 提示和注釋
提示:通常不需要使用 mysql_close(),因?yàn)橐汛蜷_的非持久連接會(huì)在腳本執(zhí)行完畢后自動(dòng)關(guān)閉。
注釋:mysql_close() 不會(huì)關(guān)閉由 mysql_pconnect() 建立的持久連接。
mysql_num_rows
-
定義和用法
mysql_num_rows() 函數(shù)返回結(jié)果集中行的數(shù)目。 -
語(yǔ)法
-
說(shuō)明
mysql_num_rows()返回結(jié)果集中行的數(shù)目。此命令僅對(duì)SELECT語(yǔ)句有效。要取得被INSERT,UPDATE或者DELETE查詢所影響到的行的數(shù)目,用mysql_affected_rows()。類似你使用sqlmap時(shí),輸出地一行行類似表格地?cái)?shù)據(jù),結(jié)果集中行地?cái)?shù)目,應(yīng)該就是這個(gè) -
提示和注釋
注釋:如果使用 mysql_unbuffered_query(),則直到結(jié)果集中的所有行都被提取mysql_num_rows() 才能返回正確的值。 -
例
mysql_select_db
-
定義和用法
mysql_select_db() 函數(shù)設(shè)置活動(dòng)的 MySQL 數(shù)據(jù)庫(kù)。
如果成功,則該函數(shù)返回 true。如果失敗,則返回 false。 -
語(yǔ)法
- 例
mysql_result
-
定義和用法
mysql_result() 函數(shù)返回結(jié)果集中一個(gè)字段的值。
如果成功,則該函數(shù)返回字段值。如果失敗,則返回 false。 -
語(yǔ)法
- 說(shuō)明
當(dāng)作用于很大的結(jié)果集時(shí),應(yīng)該考慮使用能夠取得整行的函數(shù)。這些函數(shù)在一次函數(shù)調(diào)用中返回了多個(gè)單元的內(nèi)容,比 mysql_result() 快得多。
此外請(qǐng)注意,在字段參數(shù)中指定數(shù)字偏移量比指定字段名或者 tablename.fieldname 要快得多。 - 例
mysql_real_escape_string
- 定義和用法
- 語(yǔ)法
- 說(shuō)明
本函數(shù)將 string 中的特殊字符轉(zhuǎn)義,并考慮到連接的當(dāng)前字符集,因此可以安全用于 mysql_query()。
提示和注釋
提示:可使用本函數(shù)來(lái)預(yù)防數(shù)據(jù)庫(kù)攻擊。 - 例
stripslashes
-
定義和用法
stripslashes() 函數(shù)刪除由 addslashes() 函數(shù)添加的反斜杠。
提示:該函數(shù)可用于清理從數(shù)據(jù)庫(kù)中或者從 HTML 表單中取回的數(shù)據(jù)。 -
語(yǔ)法
- 技術(shù)細(xì)節(jié)
返回值: 返回已剝離反斜杠的字符串。
PHP 版本: 4+ - 例
sleep
-
定義和用法
sleep() 函數(shù)延遲代碼執(zhí)行若干秒。 -
語(yǔ)法
-
返回值
若成功,返回 0,否則返回 false。
錯(cuò)誤/異常
如果指定的描述 seconds 是負(fù)數(shù),該函數(shù)將生成一個(gè) E_WARNING。 -
例子
stristr(注,該函數(shù)不區(qū)分大小寫,strstr和這個(gè)函數(shù)用法一樣,區(qū)分大小寫)
-
定義和用法
stristr() 函數(shù)搜索字符串在另一字符串中的第一次出現(xiàn)。
注釋:該函數(shù)是二進(jìn)制安全的。
注釋:該函數(shù)是不區(qū)分大小寫的。如需進(jìn)行區(qū)分大小寫的搜索,請(qǐng)使用 strstr() 函數(shù)。 -
語(yǔ)法
- 技術(shù)細(xì)節(jié)
返回值: 返回字符串的剩余部分(從匹配點(diǎn))。如果未找到所搜索的字符串,則返回 FALSE。
PHP 版本: 4+
更新日志:
在 PHP 5.3 中,新增了 before_search 參數(shù)。
在 PHP 4.3 中,該函數(shù)變成是二進(jìn)制安全的。 - 例
php_uname
php_uname($mode) mode 是單個(gè)字符,用于定義要返回什么信息: ‘a(chǎn)’:此為默認(rèn)。包含序列 “s n r v m” 里的所有模式。 ’s’:操作系統(tǒng)名稱。例如: FreeBSD。 ‘n’:主機(jī)名。例如: localhost.example.com。 ‘r’:版本名稱,例如: 5.1.2-RELEASE。 ‘v’:版本信息。操作系統(tǒng)之間有很大的不同。 ‘m’:機(jī)器類型。例如:i386。shell_exec
shell_exec()函數(shù)是PHP中的一個(gè)內(nèi)置函數(shù),用于通過(guò)shell執(zhí)行命令并以字符串的形式返回完整的輸出。如果命令失敗,則返回NULL。 exec()函數(shù)是PHP中的內(nèi)置函數(shù),用于執(zhí)行外部程序并返回輸出的最后一行。如果沒有正確運(yùn)行命令,它也返回NULL。str_replace
- 定義和用法
str_replace() 函數(shù)替換字符串中的一些字符(區(qū)分大小寫)。
該函數(shù)必須遵循下列規(guī)則:
如果搜索的字符串是一個(gè)數(shù)組,那么它將返回一個(gè)數(shù)組。
如果搜索的字符串是一個(gè)數(shù)組,那么它將對(duì)數(shù)組中的每個(gè)元素進(jìn)行查找和替換。
如果同時(shí)需要對(duì)某個(gè)數(shù)組進(jìn)行查找和替換,并且replace的值少于查找到的元素的數(shù)量,那么多余的元素將用空字符串進(jìn)行替換。
如果是對(duì)一個(gè)數(shù)組進(jìn)行查找,但只對(duì)一個(gè)字符串進(jìn)行替換,那么替代字符串將對(duì)所有查找到的值起作用。
注釋:該函數(shù)是區(qū)分大小寫的。請(qǐng)使用 str_ireplace() 函數(shù)執(zhí)行不區(qū)分大小寫的搜索。
注釋:該函數(shù)是二進(jìn)制安全的。 - 語(yǔ)法
- 技術(shù)細(xì)節(jié)
返回值: 返回帶有替換值的字符串或數(shù)組。
PHP 版本: 4+
更新日志: 在 PHP 5.0 中,新增了 count 參數(shù)。
在 PHP 4.3.3 之前,該函數(shù)的 find 和 replace 參數(shù)都為數(shù)組時(shí)將會(huì)遇到麻煩,會(huì)引起空的 find 索引在內(nèi)部指針沒有更換到 replace 數(shù)組上時(shí)被忽略。新的版本不會(huì)有這個(gè)問(wèn)題。
自 PHP 4.0.5 起,大多數(shù)參數(shù)可以是一個(gè)數(shù)組。 - 例
array_keys
-
定義和用法
array_keys() 函數(shù)返回包含數(shù)組中所有鍵名的一個(gè)新數(shù)組。
如果提供了第二個(gè)參數(shù),則只返回鍵值為該值的鍵名。
如果 strict 參數(shù)指定為 true,則 PHP 會(huì)使用全等比較 (===) 來(lái)嚴(yán)格檢查鍵值的數(shù)據(jù)類型。 -
語(yǔ)法
- 技術(shù)細(xì)節(jié)
返回值: 返回包含數(shù)組中所有鍵名的一個(gè)新數(shù)組。
PHP 版本: 4+
更新日志: strict 參數(shù)是在 PHP 5.0 中新增的。 - 例
trim
-
定義和用法
trim() 函數(shù)移除字符串兩側(cè)的空白字符或其他預(yù)定義字符。
相關(guān)函數(shù):
ltrim() - 移除字符串左側(cè)的空白字符或其他預(yù)定義字符。
rtrim() - 移除字符串右側(cè)的空白字符或其他預(yù)定義字符。 -
語(yǔ)法
- 技術(shù)細(xì)節(jié)
返回值: 返回已修改的字符串。
PHP 版本: 4+
更新日志: 在 PHP 4.1 中,新增了 charlist 參數(shù)。 - 例
explode
-
定義和用法
explode() 函數(shù)把字符串打散為數(shù)組。
注釋:“separator” 參數(shù)不能是空字符串。
注釋:該函數(shù)是二進(jìn)制安全的。 -
語(yǔ)法
- 技術(shù)細(xì)節(jié)
返回值: 返回字符串的數(shù)組
PHP 版本: 4+
更新日志: 在 PHP 4.0.1 中,新增了 limit 參數(shù)。在 PHP 5.1.0 中,新增了對(duì)負(fù)數(shù) limit 的支持。 - 例
is_numeric
- is_numeric() 函數(shù)用于檢測(cè)變量是否為數(shù)字或數(shù)字字符串。
PHP 版本要求:PHP 4, PHP 5, PHP 7 - 語(yǔ)法
- 返回值
如果指定的變量是數(shù)字和數(shù)字字符串則返回 TRUE,否則返回 FALSE。
sizeof
-
定義和用法
sizeof() 函數(shù)計(jì)算數(shù)組中的單元數(shù)目或?qū)ο笾械膶傩詡€(gè)數(shù)。
sizeof() 函數(shù)是 count() 函數(shù)的別名。
注釋:當(dāng)變量未被設(shè)置,或是變量包含一個(gè)空的數(shù)組,該函數(shù)會(huì)返回 0。可使用 isset() 變量來(lái)測(cè)試變量是否被設(shè)置。 -
語(yǔ)法
- 技術(shù)細(xì)節(jié)
返回值: 返回?cái)?shù)組中元素的數(shù)目。
PHP 版本: 4+ - 例
isset
- (PHP 4, PHP 5, PHP 7)
isset — 檢測(cè)變量是否已設(shè)置并且非 NULL - 說(shuō)明
- 返回值
如果 var 存在并且值不是 NULL 則返回 TRUE,否則返回 FALSE。
更新日志
版本 說(shuō)明
5.4.0
檢查字符的非數(shù)字偏移量將會(huì)返回 FALSE。 - 例
die(exit相同用法)
- 定義和用法
die() 函數(shù)輸出一條消息,并退出當(dāng)前腳本。
該函數(shù)是 exit() 函數(shù)的別名。 - 語(yǔ)法
-
說(shuō)明
如果 status 是字符串,則該函數(shù)會(huì)在退出前輸出字符串。
如果 status 是整數(shù),這個(gè)值會(huì)被用作退出狀態(tài)。退出狀態(tài)的值在0至254之間。退出狀態(tài)255
由 PHP 保留,不會(huì)被使用。狀態(tài) 0 用于成功地終止程序。 -
提示和注釋
注釋:如果 PHP 的版本號(hào)大于等于 4.2.0,那么在 status 是整數(shù)的情況下,不會(huì)輸出該參數(shù)。
or die:or前面的語(yǔ)句執(zhí)行返回true,就不執(zhí)行or后面的;or前面返回false,就執(zhí)行or后面的語(yǔ)句,因?yàn)閐ie以執(zhí)行就結(jié)束整個(gè)腳本的運(yùn)行,所以常常用來(lái)調(diào)試。
eregi(ereg)
-
(PHP 4, PHP 5)
eregi — 不區(qū)分大小寫的正則表達(dá)式匹配(ereg用法和eregi一樣,但是區(qū)分大小寫)
eregi()函數(shù)在一個(gè)字符串搜索指定的模式的字符串。搜索不區(qū)分大小寫。Eregi()可以特別有用的檢查有效性字符串,如密碼。 -
定義和用法
- 返回值
如果匹配成功返回true,否則,則返回false
本函數(shù)和 ereg() 完全相同,只除了在匹配字母字符時(shí)忽略大小寫的區(qū)別。 - 例
basename
-
定義和用法
basename() 函數(shù)返回路徑中的文件名部分。 -
語(yǔ)法
- 例
move_uploaded_file
- 定義和用法
move_uploaded_file() 函數(shù)將上傳的文件移動(dòng)到新位置。
若成功,則返回 true,否則返回 false。 - 語(yǔ)法
- 說(shuō)明
本函數(shù)檢查并確保由 file 指定的文件是合法的上傳文件(即通過(guò) PHP 的 HTTP POST 上傳機(jī)制所上傳的)。如果文件合法,則將其移動(dòng)為由 newloc 指定的文件。
如果 file 不是合法的上傳文件,不會(huì)出現(xiàn)任何操作,move_uploaded_file() 將返回 false。
如果 file 是合法的上傳文件,但出于某些原因無(wú)法移動(dòng),不會(huì)出現(xiàn)任何操作,move_uploaded_file() 將返回 false,此外還會(huì)發(fā)出一條警告。
這種檢查顯得格外重要,如果上傳的文件有可能會(huì)造成對(duì)用戶或本系統(tǒng)的其他用戶顯示其內(nèi)容的話。 - 提示和注釋
注釋:本函數(shù)僅用于通過(guò) HTTP POST 上傳的文件。
注意:如果目標(biāo)文件已經(jīng)存在,將會(huì)被覆蓋。
substr
- 定義和用法
substr() 函數(shù)返回字符串的一部分。
注釋:如果 start 參數(shù)是負(fù)數(shù)且 length 小于或等于 start,則 length 為 0。 - 語(yǔ)法
- 技術(shù)細(xì)節(jié)
返回值: 返回字符串的提取部分,若失敗則返回 FALSE,或者返回一個(gè)空字符串。
PHP 版本: 4+
更新日志:
在 PHP 5.2.2 到 5.2.6 版本中,如果 start 參數(shù)表示負(fù)截?cái)嗷蛘咴浇缥恢?#xff0c;則返回 FALSE。
其他版本則從 start 位置開始獲取字符串。 - 例
strrpos
- 定義和用法
strrpos() 函數(shù)查找字符串在另一字符串中最后一次出現(xiàn)的位置。
注釋:strrpos() 函數(shù)對(duì)大小寫敏感。
相關(guān)函數(shù):
stripos() - 查找字符串在另一字符串中第一次出現(xiàn)的位置(不區(qū)分大小寫)
strpos() - 查找字符串在另一字符串中第一次出現(xiàn)的位置(區(qū)分大小寫)
strripos() - 查找字符串在另一字符串中最后一次出現(xiàn)的位置(不區(qū)分大小寫) - 語(yǔ)法
- 技術(shù)細(xì)節(jié)
返回值:
返回字符串在另一字符串中最后一次出現(xiàn)的位置,如果沒有找到字符串則返回 FALSE。
注釋: 字符串位置從 0 開始,不是從 1 開始。
PHP 版本: 4+
更新日志:
自 PHP 5.0 起,find 參數(shù)可以是包含超過(guò)一個(gè)字符的字符串。
在 PHP 5.0 中,新增了 start 參數(shù)。 - 例
strtolower
- 定義和用法
strtolower() 函數(shù)把字符串轉(zhuǎn)換為小寫。
注釋:該函數(shù)是二進(jìn)制安全的。
相關(guān)函數(shù):
lcfirst() - 把字符串中的首字符轉(zhuǎn)換為小寫
strtoupper() - 把字符串轉(zhuǎn)換為大寫
ucfirst() - 把字符串中的首字符轉(zhuǎn)換為大寫
ucwords() - 把字符串中每個(gè)單詞的首字符轉(zhuǎn)換為大寫 - 語(yǔ)法
- 技術(shù)細(xì)節(jié)
返回值: 返回轉(zhuǎn)換為小寫的字符串。
PHP 版本: 4+ - 例
getimagesize
- getimagesize() 函數(shù)用于獲取圖像大小及相關(guān)信息,成功返回一個(gè)數(shù)組,失敗則返回 FALSE 并產(chǎn)生一條 E_WARNING 級(jí)的錯(cuò)誤信息。
- 語(yǔ)法格式:
a
- 返回結(jié)果說(shuō)明
(1)索引 0 給出的是圖像寬度的像素值
(2)索引 1 給出的是圖像高度的像素值
(3)索引 2 給出的是圖像的類型,返回的是數(shù)字,其中1 = GIF,2 = JPG,3 = PNG,4 = SWF,5 = PSD,6 = BMP,7 = TIFF(intel byte order),8 = TIFF(motorola byte order),9 = JPC,10 = JP2,11 = JPX,12 = JB2,13 = SWC,14 = IFF,15 = WBMP,16 = XBM
(4)索引 3 給出的是一個(gè)寬度和高度的字符串,可以直接用于 HTML 的 標(biāo)簽
(5)索引 bits 給出的是圖像的每種顏色的位數(shù),二進(jìn)制格式
(6)索引 channels 給出的是圖像的通道值,RGB 圖像默認(rèn)是 3
(7)索引 mime 給出的是圖像的 MIME 信息,此信息可以用來(lái)在 HTTP Content-type 頭信息中發(fā)送正確的信息,如: header(“Content-type: image/jpeg”); - 例
ini_get
- (PHP 4, PHP 5, PHP 7)
ini_get — 獲取一個(gè)配置選項(xiàng)的值 - 說(shuō)明
- 返回值
成功是返回配置選項(xiàng)值的字符串,值為null或配置選項(xiàng)不存在,將會(huì)返回 FALSE。 - 例
sys_get_temp_dir
- (PHP 5 >= 5.2.1, PHP 7)
sys_get_temp_dir — 返回用于臨時(shí)文件的目錄 - 說(shuō)明
- 返回值
返回臨時(shí)目錄的路徑。 - 例
temnam
- 定義和用法
tempnam() 函數(shù)創(chuàng)建一個(gè)具有唯一文件名的臨時(shí)文件。
若成功,則該函數(shù)返回新的臨時(shí)文件名。若失敗,則返回 false。 - 語(yǔ)法
- 說(shuō)明
在指定目錄中建立一個(gè)具有唯一文件名的文件。如果該目錄不存在,tempnam() 會(huì)在系統(tǒng)臨時(shí)目錄中生成一個(gè)文件,并返回其文件名。
在 PHP 4.0.6 之前,tempnam() 函數(shù)的行為取決于系統(tǒng)。在 Windows 下 TMP 環(huán)境變量會(huì)越過(guò) dir 參數(shù),在 Linux 下 TMPDIR 環(huán)境變量?jī)?yōu)先,而在 SVR4 下總是使用 dir 參數(shù),如果其指向的目錄存在的話。 - 提示和注釋
注釋:如果 PHP 不能在指定的 dir 參數(shù)中創(chuàng)建文件,則退回到系統(tǒng)默認(rèn)值。
注釋:本函數(shù)的行為在 4.0.3 版中改變了。也會(huì)建立一個(gè)臨時(shí)文件以避免競(jìng)爭(zhēng)情形,即有可能會(huì)在產(chǎn)生出作為文件名的字符串與腳本真正建立該文件之間會(huì)在文件系統(tǒng)中存在同名文件。注意,如果不再需要該文件則要?jiǎng)h除此文件,不會(huì)自動(dòng)刪除的。 - 例
imagecreatefromjpeg
- (PHP 4, PHP 5, PHP 7)
imagecreatefromjpeg — 由文件或 URL 創(chuàng)建一個(gè)新圖象。 - 說(shuō)明
imagedestroy
- (PHP 4, PHP 5, PHP 7)
imagedestroy — 銷毀一圖像 - 說(shuō)明
rename
- 定義和用法
rename() 函數(shù)重命名文件或目錄。
若成功,則該函數(shù)返回 true。若失敗,則返回 false。 - 語(yǔ)法
- 提示和注釋
注釋:在 PHP 4.3.3 之前,rename() 不能在基于 *nix 的系統(tǒng)中跨磁盤分區(qū)重命名文件。
注釋:用于 oldname 中的封裝協(xié)議必須和用于 newname 中的相匹配。
注釋:對(duì) context 的支持是 PHP 5.0.0 添加的。 - 例
getcwd
- 定義和用法
getchwd() 函數(shù)返回當(dāng)前工作目錄。 - 例
獲取當(dāng)前工作目錄:
結(jié)果:
/home/php
file_exists
-
定義和用法
file_exists() 函數(shù)檢查文件或目錄是否存在。
如果指定的文件或目錄存在則返回 true,否則返回 false。 -
語(yǔ)法
- 例
unlink
-
定義和用法
unlink() 函數(shù)刪除文件。
若成功,則返回 true,失敗則返回 false。 -
語(yǔ)法
- 提示和注釋
注釋:對(duì) context 的支持是 PHP 5.0.0 添加的。 - 例
header
- 定義和用法
header() 函數(shù)向客戶端發(fā)送原始的 HTTP 報(bào)頭。
認(rèn)識(shí)到一點(diǎn)很重要,即必須在任何實(shí)際的輸出被發(fā)送之前調(diào)用 header() 函數(shù)(在 PHP 4 以及更高的版本中,您可以使用輸出緩存來(lái)解決此問(wèn)題):
- 語(yǔ)法
- 提示和注釋
注釋:從 PHP 4.4 之后,該函數(shù)防止一次發(fā)送多個(gè)報(bào)頭。這是對(duì)頭部注入攻擊的保護(hù)措施。 - 例
rand
- 定義和用法
rand() 函數(shù)返回隨機(jī)整數(shù)。 - 語(yǔ)法
- 提示和注釋
注釋:在某些平臺(tái)下(例如 Windows)RAND_MAX 只有 32768。如果需要的范圍大于 32768,那么指定 min 和 max 參數(shù)就可以生成大于 RAND_MAX 的數(shù)了,或者考慮用 mt_rand() 來(lái)替代它。
注釋:自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函數(shù)給隨機(jī)數(shù)發(fā)生器播種,現(xiàn)在已自動(dòng)完成。
注釋:在 3.0.7 之前的版本中,max 的含義是 range 。要在這些版本中得到和上例相同 5 到 15 的隨機(jī)數(shù),簡(jiǎn)短的例子是 rand (5, 11)。 - 例
intval
-
去除小數(shù)點(diǎn)(0除外)的函數(shù)
-
intval() 函數(shù)用于獲取變量的整數(shù)值。
intval() 函數(shù)通過(guò)使用指定的進(jìn)制 base 轉(zhuǎn)換(默認(rèn)是十進(jìn)制),返回變量 var 的 integer 數(shù)值。 intval() 不能用于 object,否則會(huì)產(chǎn)生 E_NOTICE 錯(cuò)誤并返回 1。
PHP 4, PHP 5, PHP 7 -
語(yǔ)法
- 返回值
成功時(shí)返回 var 的 integer 值,失敗時(shí)返回 0。 空的 array 返回 0,非空的 array 返回 1。
最大的值取決于操作系統(tǒng)。 32 位系統(tǒng)最大帶符號(hào)的 integer 范圍是 -2147483648 到 2147483647。舉例,在這樣的系統(tǒng)上, intval(‘1000000000000’) 會(huì)返回 2147483647。64 位系統(tǒng)上,最大帶符號(hào)的 integer 值是 9223372036854775807。
字符串有可能返回 0,雖然取決于字符串最左側(cè)的字符。 - 例
extract
-
參數(shù)里數(shù)組的鍵名當(dāng)作變量名,值作為變量的值
-
定義和用法
extract() 函數(shù)從數(shù)組中將變量導(dǎo)入到當(dāng)前的符號(hào)表。
該函數(shù)使用數(shù)組鍵名作為變量名,使用數(shù)組鍵值作為變量值。針對(duì)數(shù)組中的每個(gè)元素,將在當(dāng)前符號(hào)表中創(chuàng)建對(duì)應(yīng)的一個(gè)變量。
第二個(gè)參數(shù) type 用于指定當(dāng)某個(gè)變量已經(jīng)存在,而數(shù)組中又有同名元素時(shí),extract() 函數(shù)如何對(duì)待這樣的沖突。
該函數(shù)返回成功導(dǎo)入到符號(hào)表中的變量數(shù)目。 -
語(yǔ)法
- 技術(shù)細(xì)節(jié)
返回值: 返回成功導(dǎo)入到符號(hào)表中的變量數(shù)目。
PHP 版本: 4+
更新日志:
extract_rules 的值 EXTR_REFS 是在 PHP 4.3 中新增的。
extract_rules 的值 EXTR_IF_EXISTS 和 EXTR_PREFIX_IF_EXISTS 是在 PHP 4.2 中新增的。
自 PHP 4.0.5 起,該函數(shù)返回成功導(dǎo)入到符號(hào)表中的變量數(shù)目。
extract_rules 的值 EXTR_PREFIX_INVALID 是在 PHP 4.0.5 中新增的。
自 PHP 4.0.5 起,extract_rules 的值 EXTR_PREFIX_ALL 也包含數(shù)字變量。 - 例
return
立即終止return所在函數(shù)的代碼,繼續(xù)執(zhí)行該return函數(shù)外的代碼strcmp
- 弱類型:傳入數(shù)組時(shí)會(huì)返回null
- int strcmp ( string $str1 , string $str2 )
- strcmp()函數(shù)期望傳入到它當(dāng)中的數(shù)據(jù)是字符串類型,但是如果我們傳入不合法的字符串類型的數(shù)據(jù),這個(gè)函數(shù)將會(huì)有怎么樣的行為呢?實(shí)際上,當(dāng)這個(gè)函數(shù)接受到了不合法的字符串類型時(shí),這個(gè)函數(shù)將發(fā)生錯(cuò)誤,但是在5.3之前的php中,顯示了報(bào)錯(cuò)的警告信息后,將return 0 !!! 也就是雖然報(bào)了錯(cuò),但卻返回0。php官方在后面的版本中修復(fù)了這個(gè)漏洞,使得報(bào)錯(cuò)的時(shí)候函數(shù)不返回任何值。
htmlentities
-
把字符轉(zhuǎn)換為html實(shí)體,改變?cè)创a,輸出不變
-
定義和用法
htmlentities() 函數(shù)把字符轉(zhuǎn)換為 HTML 實(shí)體。
提示:要把 HTML 實(shí)體轉(zhuǎn)換回字符,請(qǐng)使用 html_entity_decode() 函數(shù)。
提示:請(qǐng)使用 get_html_translation_table() 函數(shù)來(lái)返回 htmlentities() 使用的翻譯表。 -
語(yǔ)法
- 技術(shù)細(xì)節(jié)
返回值:
返回被轉(zhuǎn)換的字符串。
如果 string 包含無(wú)效的編碼,則返回一個(gè)空的字符串,除非設(shè)置了 ENT_IGNORE 或者 ENT_SUBSTITUTE 標(biāo)志。
PHP 版本: 4+ - 更新日志:
在 PHP 5 中,character-set 參數(shù)的默認(rèn)值改為 UTF-8。
在 PHP 5.4 中,新增了:ENT_SUBSTITUTE、ENT_DISALLOWED、ENT_HTML401、ENT_HTML5、ENT_XML1 和 ENT_XHTML。
在 PHP 5.3 中,新增了 ENT_IGNORE。
在 PHP 5.2.3 中,新增了 double_encode 參數(shù)。
在 PHP 4.1 中,新增了 character-set 參數(shù)。 - 例
總結(jié)
- 上一篇: 特性胶囊能刷出隐藏特性吗
- 下一篇: 动态规划算法php,php算法学习之动态