重點: 看函數的 ‘參數’ 和 ‘返回值’php
文檔:http://www.w3school.com.cn/php/php_ref_array.asp數組
http://www.w3school.com.cn/php/php_ref_string.asp函數
一、PHP處理數組的經常使用函數。spa
- array() 建立數組
-
array_column(array, column_key, index_key) 返回輸入數組中某個單一列的值【對二維數組生效】 .net
-
array_combine(keys, values) 函數經過合併兩個數組來建立一個新數組,其中的一個數組是鍵名,另外一個數組的值爲鍵值。【註釋:鍵名數組和鍵值數組的元素個數必須相同!】orm
-
array_count_values(array) 統計數組中的全部值出現的次數。本函數返回一個數組,其元素的鍵名是原數組的值,鍵值是該值在原數組中出現的次數。對象
-
array_diff(array1, array2, array3 ...) 返回兩個數組的差集數組,只比較鍵值。該數組包括了全部在被比較的數組中,可是不在任何其餘參數數組中的鍵值。在返回的數組中,鍵名保持不變。【註釋:可用一個或任意多個數組與第一個數組進行比較。】 遞歸
- array_diff_assoc(array1, array2, array3 ...) 函數用於比較兩個(或更多個)數組的鍵名和鍵值 ,並返回差集。
-
array_diff_key(array1, array2, array3 ...) 用於比較兩個(或更多個)數組的鍵名 ,並返回差集。ip
-
array_intersect(array1, array2, array3 ...) 用於比較兩個(或更多個)數組的鍵值,並返回交集。ci
-
array_key_exists(key,array) 檢查某個數組中是否存在指定的鍵名,若是鍵名存在則返回 true,若是鍵名不存在則返回 false。【註釋:若是您指定數組的時候省略了鍵名,將會生成從 0 開始而且每一個鍵值對應以 1 遞增的整數鍵名】
- array_merge(array1, array2, array3 ...) 把一個或多個數組合併爲一個數組並返回。【註釋:若是兩個或更多個數組元素有相同的鍵名,則最後的元素會覆蓋其餘元素。】
- array_merge_recursive(array1, array2, array3 ...) 把一個或多個數組合併爲一個數組並返回。【註釋:若是兩個或更多個數組元素有相同的鍵名,不會進行鍵名覆蓋,而是將多個相同鍵名的值遞歸組成一個數組。】
-
array_push(array, value1, value2 ...) 將一個或多個元素插入數組的末尾(入棧)【註釋:若是用 array_push() 來給數組增長一個單元,還不如用 $array[] =,由於這樣沒有調用函數的額外負擔。】
- array_pop(array) 刪除數組中的最後一個元素。
- array_reverse(array, preserve) 將數組的順序反轉並返回新數組【註釋:若是第二個參數指定爲 true,則元素的鍵名保持不變,不然鍵名將丟失。】
- array_rand(array, number) 從數組中隨機選出一個或多個元素,並返回。
- array_slice(array, start, length, preserve) 在數組中根據條件取出一段值,返回選取的元素。preserve參數規定函數是保留鍵名仍是重置鍵名,默認false,重置鍵名。【註釋:若是數組有字符串鍵,所返回的數組將保留鍵名。】
- array_splice(array, start, length, array2) 選擇數組中的一系列元素,刪除它們並用其它值代替。
- array_unique(array) 移除數組中的重複的值,並返回結果數組。
- count(array) 返回數組中元素的個數【別名:sizeof(array)】
- in_array(search, array, type) 搜索數組中是否存在指定的值。若是 search 參數是字符串且 type 參數被設置爲 TRUE,則搜索區分大小寫。
二、PHP處理字符串的經常使用數組。
- explode(separator,string[ ,limit]) 把字符串按指定的分割符separator打散爲數組。limit參數可選,限制返回的個數。【註釋:separator不能爲空】
- implode(separator,array)或join(separator[ ,array]) 返回由數組元素組合成的字符串。【註釋:若是未設置 array 參數,則由該函數設置的變量將覆蓋已存在的同名變量。php.ini 文件中的 magic_quotes_gpc 設置影響該函數的輸出。若是已啓用,那麼在 parse_str() 解析以前,變量會被 addslashes() 轉換。】
- printf(format, arg1, arg2, arg++) 輸出格式化的字符串。
- sprintf(format, arg1, arg2, arg++) 把格式化的字符串寫入變量中。【提示:相關函數:printf()、 vprintf()、 vsprintf()、 fprintf() 和 vfprintf()】
- parse_str(string, array) 把查詢字符串解析到變量中。
- similar_text(string1, string2, percent) 計算兩個字符串的類似度,也能計算兩個字符串的百分比類似度。levenshtein() 函數比 similar_text() 函數更快,不過,similar_text() 函數可經過更少的必需修改次數爲您提供更精確的結果。
- strtr(string, from, to)或strtr(string, array('from'=>'to')) 轉換字符串中特定的字符。
- str_repeat(string, repeat) 把字符串重複指定的次數
- str_replace(find, replace, string, count) 以其餘字符替換字符串中的一些字符(區分大小寫)。【注意與strtr(string, array)區分】
- str_split(string, length) 把字符串按每length長度分割到數組中。
- strip_tags() 剝去字符串中的 HTML、XML 以及 PHP 的標籤。【該函數始終會剝離 HTML 註釋。這點沒法經過 allow 參數改變。】
- strlen(string) 返回字符串的長度。 【通常用mb_strlen()函數來替換】
- strtolower(string) 將字符串轉換成小寫
- strtoupper(string) 將字符串轉換成大寫
- strchr(string, search,befor_search) strstr()的別名,搜索字符串在另外一字符串中的第一次出現返回此字符串的其他部分。befor_search參數爲true時返回search 參數第一次出現以前的字符串部分。
- substr(string, start, length) 返回字符串的一部分。
- substr_count(string, substring, start, length) 計算子串在字符串中出現的次數。【註釋:子串區分大小寫】
- substr_replace() 把字符串的一部分替換爲另外一個字符串。
-
- ltrim(string, charlist) 移除字符串左側的空白字符或其餘預約義字符。
- rtrim(string, charlist) 移除字符串右側的空白符或其餘預約義字符。
- trim(string, charlist) 移除字符串兩側的空白符或其餘預約義字符。
- number_format(number, decimals,decimalpoint,separator) 經過千位分組來格式化數字。【註釋:該函數支持一個、兩個或四個參數(不是三個),separator參數設置了的話其餘參數必須設置】
- is_string(variable) 判斷變量是否爲字符串類型
一、注意區分strtr()、str_replace()、preg_replace()、substr_replace()
php_mbstring擴展主要用於中、英文混合的狀況。安裝PHP時通常須要安裝該擴展,默認是沒有安裝的。
二、注意區分strlen() 與mb_strlen()的區別。
三、注意區分substr()與mb_substr()的區別。
四、格式化函數的參數簡表
參數 |
描述 |
format |
必需。規定字符串以及如何格式化其中的變量。 可能的格式值:
- %% - 返回一個百分號 %
- %b - 二進制數
- %c - ASCII 值對應的字符
- %d - 包含正負號的十進制數(負數、0、正數)
- %e - 使用小寫的科學計數法(例如 1.2e+2)
- %E - 使用大寫的科學計數法(例如 1.2E+2)
- %u - 不包含正負號的十進制數(大於等於 0)
- %f - 浮點數(本地設置)
- %F - 浮點數(非本地設置)
- %g - 較短的 %e 和 %f
- %G - 較短的 %E 和 %f
- %o - 八進制數
- %s - 字符串
- %x - 十六進制數(小寫字母)
- %X - 十六進制數(大寫字母)
附加的格式值。必需放置在 % 和字母之間(例如 %.2f):
- + (在數字前面加上 + 或 - 來定義數字的正負性。默認狀況下,只有負數才作標記,正數不作標記)
- ' (規定使用什麼做爲填充,默認是空格。它必須與寬度指定器一塊兒使用。例如:%'x20s(使用 "x" 做爲填充))
- - (左調整變量值)
- [0-9] (規定變量值的最小寬度)
- .[0-9] (規定小數位數或最大字符串長度)
註釋:若是使用多個上述的格式值,它們必須按照以上順序使用。 |
arg1 |
必需。規定插到 format 字符串中第一個 % 符號處的參數。 |
arg2 |
可選。規定插到 format 字符串中第二個 % 符號處的參數。 |
arg++ |
可選。規定插到 format 字符串中第3、四等 % 符號處的參數。 |
三、PHP處理時間的經常使用函數。
- date_create(tiem, timezone) 返回一個新的 DateTime 對象
- date_format(dateObject, format) 返回根據指定格式進行格式化的日期
- date_default_timezone_get() 返默認時區
- date_default_timezone_set() 設置默認時區【合法的時區列表http://php.net/manual/zh/timezones.php】
- date_diff(datetime1, datetime2, absolute) 返回兩個 DateTime 對象間的差值【absolute可選。規定布爾值。TRUE 表示間隔/差值必須是正的。默認是 FALSE。】
- date(format, timestamp) 格式化本地時間/日期
- getdate(timestamp) 返回日期/時間信息
- gettimeofday(return_float) 返回當前時間信息
- microtime() 返回當前時間的微妙數
- mktime() 返回一個日期的Unix時間戳
- strtotime(time, now) 將任意英文文本的日期或時間描述解析成Unix 時間戳
- time() 返回當前時間的Unix時間戳