php常用的函數
1. 分享幾個php經常用到的數學函數,常玩數據的
abs() 絕對值
number abs ( mixed $number )
返回參數 number 的絕對值。如果參數 number 是 float,則返回的類型也是 float,否則返回 integer(因為 float 通常比 integer 有更大的取值范圍)。1
<?php
2
$abs = abs(-4.2); // $abs = 4.2; (double/float)
3
$abs2 = abs(5); // $abs2 = 5; (integer)
4
$abs3 = abs(-5); // $abs3 = 5; (integer)
5
?>
ceil() 進一法取整
float ceil ( float $value )
返回不小於 value 的下一個整數,value 如果有小數部分則進一位。ceil() 返回的類型仍然是 float,因為 float 值的范圍通常比 integer 要大。
1
<?php
2
echo ceil(4.3); // 5
3
echo ceil(9.999); // 10
4
?>
floor() 捨去法取整
float floor ( float $value )
返回不大於 value 的下一個整數,將 value 的小數部分捨去取整。floor() 返回的類型仍然是 float,因為 float 值的范圍通常比 integer 要大。
1
<?php
2
echo floor(4.3); // 4
3
echo floor(9.999); // 9
4
?>
round() 對浮點數進行四捨五入
float round ( float $val [, int $precision ] )
返回將 val 根據指定精度 precision(十進制小數點後數字的數目)進行四捨五入的結果。precision 也可以是負數或零(默認值)。
01
<?php
02
echo round(3.4); // 3
03
echo round(3.5); // 4
04
echo round(3.6); // 4
05
echo round(3.6, 0); // 4
06
echo round(1.95583, 2); // 1.96
07
echo round(1241757, -3); // 1242000
08
echo round(5.045, 2); // 5.05
09
echo round(5.055, 2); // 5.06
10
?>
rand() 產生一個隨機整數
int rand ([ int $min ], int $max )
如果沒有提供可選參數 min 和 max,rand() 返回 0 到 RAND_MAX 之間的偽隨機整數。例如想要 5 到 15(包括 5 和 15)之間的隨機數,用 rand(5, 15)。
1
<?php
2
echo rand() . "\n";
3
echo rand() . "\n";
4
echo rand(5, 15);
5
?>
max — 找出最大值
mixed max ( number $arg1 , number $arg2 )
mixed max ( array $numbers [, array $... ] )
max() 返回參數中數值最大的值。
如果僅有一個參數且為數組,max() 返回該數組中最大的值。如果第一個參數是整數、字元串或浮點數,則至少需要兩個參數而 max() 會返回這些值中最大的一個。可以比較無限多個值。
PHP 會將非數值的 string 當成 0,但如果這個正是最大的數值則仍然會返回一個字元串。如果多個參數都求值為 0 且是最大值,max() 會返回其中數值的 0,如果參數中沒有數值的 0,則返回按字母表順序最大的字元串。
01
<?php
02
echo max(1, 3, 5, 6, 7); // 7
03
echo max(array(2, 4, 5)); // 5
04
echo max(0, 'hello'); // 0
05
echo max('hello', 0); // hello
06
echo max(-1, 'hello'); // hello
07
// 對多個數組,max 從左向右比較。
08
// 因此在本例中:2 == 2,但 4 < 5
09
$val = max(array(2, 4, 8), array(2, 5, 7)); // array(2, 5, 7)
10
// 如果同時給出數組和非數組作為參數,則總是將數組視為
11
// 最大值返回
12
$val = max('string', array(2, 5, 7), 42); // array(2, 5, 7)
13
?>
min — 找出最小值
mixed min ( number $arg1 , number $arg2 )
mixed min ( array $numbers [, array $... ] )
min() 返回參數中數值最小的。
如果僅有一個參數且為數組,min() 返回該數組中最小的值。如果給出了兩個或更多參數, min() 會返回這些值中最小的一個。
PHP 會將非數值的 string 當成 0,但如果這個正是最小的數值則仍然會返回一個字元串。如果多個參數都求值為 0 且是最小值,min() 會返回按字母表順序最小的字元串,如果其中沒有字元串的話,則返回數值的 0。 (PS:T不錯的php Q扣峮:276167802,驗證:csl)
view sourceprint?01
<?php
02
echo min(2, 3, 1, 6, 7); // 1
03
echo min(array(2, 4, 5)); // 2
04
echo min(0, 'hello'); // 0
05
echo min('hello', 0); // hello
06
echo min('hello', -1); // -1
07
// 對多個數組,min 從左向右比較。
08
// 因此在本例中:2 == 2,但 4 < 5
09
$val = min(array(2, 4, 8), array(2, 5, 1)); // array(2, 4, 8)
10
// 如果同時給出數組和非數組作為參數,則不可能返回數組,因為
11
// 數組被視為最大的
12
$val = min('string', array(2, 5, 7), 42); // string
13
?>
---------------------
2. PHP有什麼常用的系統函數
數組處理函數庫
日期與時間函數庫
目錄管理函數庫
文件系統函數庫
HTTP 相關函數庫
圖形處理函數庫
PHP 選項及相關信息函數庫
數學運算函數庫
資料庫函數庫
正則表達式函數庫
字元串處理函數庫
變數處理函數庫
PHP對於用戶的函數是多了,關健是看要怎麼使用的問題,你可以去找一下php的CHM下載個看看,是很全的。
Adabas D 資料庫連結函式庫
阿帕契伺服器專用函式庫
陣列處理函式庫
拼字檢查函式庫
BC 高精確度函式庫
歷法函式庫
ClibPDF 函式庫
日期與時間函式庫
DBA 函式庫
dBase 格式資料表函式庫
dbm 類資料庫函式庫
目錄管理函式庫
動態連結函式庫
程式執行功能函式庫
FDF 函式庫
filePro 資料庫函式庫
檔案系統函式庫
HTTP 相關函式庫
Hyperwave 伺服器函式庫
圖形處理函式庫
IMAP 電子郵件系統函式庫
PHP 選項及相關資訊函式庫
Informix 資料庫函式庫
InterBase 資料庫函式庫
LDAP 目錄協定函式庫
電子郵件函式庫
數學運算函式庫
mcrypt 編碼函式庫
mhash 雜湊函式庫
雜項函式庫
mSQL 資料庫函式庫
SQL Server 資料庫函式庫
MySQL 資料庫函式庫
Sybase 資料庫函式庫
網路函式庫
NIS 函式庫
ODBC 資料庫連結函式庫
Oracle 8 資料庫函式庫
Oracle 資料庫函式庫
Perl 相容語法函式庫
PDF 格式檔案函式庫
PostgreSQL 資料庫函式庫
常規表示法函式庫
信號與共享記憶體函式庫
Solid 資料庫連結函式庫
SNMP 網管函式庫
字串處理函式庫
URL 處理函式庫
變數處理函式庫
Vmailmgr 郵件處理函式庫
WDDX 函式庫
壓縮檔案函式庫
XML 剖析函式庫
Session 函式庫
GNU 記錄函式庫
FTP 檔案傳輸函式庫
MCAL 模組日歷存取函式庫
3. PHP常用函數有哪些
usleep() 函數延遲代碼執行若干微秒。
unpack() 函數從二進制字元串對數據進行解包。
uniqid() 函數基於以微秒計的當前時間,生成一個唯一的 ID。
time_sleep_until() 函數延遲代碼執行直到指定的時間。
time_nanosleep() 函數延遲代碼執行若干秒和納秒。
sleep() 函數延遲代碼執行若干秒。
show_source() 函數對文件進行語法高亮顯示。
strip_whitespace() 函數返回已刪除 PHP 注釋以及空白字元的源代碼文件。
pack() 函數把數據裝入一個二進制字元串。
ignore_user_abort() 函數設置與客戶機斷開是否會終止腳本的執行。
highlight_string() 函數對字元串進行語法高亮顯示。
highlight_file() 函數對文件進行語法高亮顯示。
get_browser() 函數返回用戶瀏覽器的性能。
exit() 函數輸出一條消息,並退出當前腳本。
eval() 函數把字元串按照 PHP 代碼來計算。
die() 函數輸出一條消息,並退出當前腳本。
defined() 函數檢查某常量是否存在。
define() 函數定義一個常量。
constant() 函數返回常量的值。
connection_status() 函數返回當前的連接狀態。
connection_aborted() 函數檢查是否斷開客戶機。
zip_read() 函數讀取打開的 zip 檔案中的下一個文件。
zip_open() 函數打開 ZIP 文件以供讀取。
zip_entry_read() 函數從打開的 zip 檔案項目中獲取內容。
zip_entry_open() 函數打開一個 ZIP 檔案項目以供讀取。
zip_entry_name() 函數返回 zip 檔案項目的名稱。
zip_entry_filesize() 函數返回 zip 檔案項目的原始大小(在壓縮之前)。
zip_entry_compressionmethod() 函數返回 zip 檔案項目的壓縮方法。
zip_entry_compressedsize() 函數返回 zip 檔案項目的壓縮文件尺寸。
zip_entry_close() 函數關閉由 zip_entry_open() 函數打開的 zip 檔案文件。
zip_close() 函數關閉由 zip_open() 函數打開的 zip 檔案文件。
xml_set_unparsed_entity_decl_handler() 函數規定在遇到無法解析的實體名稱(NDATA)聲明時被調用的函數。
xml_set_processing_instruction_handler() 函數規定當解析器在 xml 文檔中找到處理指令時所調用的函數。
xml_set_object() 函數允許在對象中使用 xml 解析器。
xml_set_notation_decl_handler() 函數規定當解析器在 xml 文檔中找到符號聲明時被調用的函數。
xml_set_external_entity_ref_handler() 函數規定當解析器在 xml 文檔中找到外部實體時被調用的函數。
xml_set_element_handler() 函數建立起始和終止元素處理器。
xml_set_default_handler() 函數為 xml 解析器建立默認的數據處理器。
xml_set_character_data_handler() 函數建立字元數據處理器。
xml_parser_set_option() 函數為 xml 解析器進行選項設置。
xml_parser_get_option() 函數從 xml 解析器獲取選項設置信息。
xml_parser_free() 函數釋放 xml 解析器。
xml_parser_create() 函數創建 xml 解析器。
xml_parser_create_ns() 函數創建帶有命名空間支持的 xml 解析器。
xml_parse_into_struct() 函數把 xml 數據解析到數組中。
xml_parse() 函數解析 xml 文檔。
xml_get_error_code() 函數獲取 xml 解析器錯誤代碼。
xml_get_current_line_number() 函數獲取 xml 解析器的當前行號。
xml_get_current_column_number() 函數獲取 xml 解析器的當前列號。
xml_get_current_byte_index() 函數獲取 xml 解析器的當前位元組索引。
xml_error_string() 函數獲取 xml 解析器的錯誤描述。
utf8_encode() 函數把 ISO-8859-1 字元串編碼為 UTF-8。
utf8_decode() 函數把 UTF-8 字元串解碼為 ISO-8859-1。
wordwrap() 函數按照指定長度對字元串進行折行處理。
vsprintf() 函數把格式化字元串寫入變數中。
vprintf() 函數輸出格式化的字元串。
vfprintf() 函數把格式化的字元串寫到指定的輸出流。
ucwords() 函數把字元串中每個單詞的首字元轉換為大寫。
ucfirst() 函數把字元串中的首字元轉換為大寫。
trim() 函數從字元串的兩端刪除空白字元和其他預定義字元。
substr_replace() 函數把字元串的一部分替換為另一個字元串。
substr_count() 函數計運算元串在字元串中出現的次數。
substr_compare() 函數從指定的開始長度比較兩個字元串。
substr() 函數返回字元串的一部分。
strtr() 函數轉換字元串中特定的字元。
strtoupper() 函數把字元串轉換為大寫。
strtolower() 函數把字元串轉換為小寫。
strtok() 函數把字元串分割為更小的字元串。
strstr() 函數搜索一個字元串在另一個字元串中的第一次出現。
strspn() 函數返回在字元串中包含的特定字元的數目。
strrpos() 函數查找字元串在另一個字元串中最後一次出現的位置。
strripos() 函數查找字元串在另一個字元串中最後一次出現的位置。
strrev() 函數反轉字元串。
strrchr() 函數查找字元串在另一個字元串中最後一次出現的位置,並返回從該位置到字元串結尾的所有字元。
strpos() 函數返回字元串在另一個字元串中第一次出現的位置。
strpbrk() 函數在字元串中搜索指定字元中的任意一個。
strncmp() 函數比較兩個字元串。
strncasecmp() 函數比較兩個字元串。
strnatcmp() 函數使用一種「自然」演算法來比較兩個字元串。
strnatcasecmp() 函數使用一種「自然」演算法來比較兩個字元串。
strlen() 函數返回字元串的長度。
stristr() 函數查找字元串在另一個字元串中第一次出現的位置。
stripos() 函數返回字元串在另一個字元串中第一次出現的位置。
stripslashes() 函數刪除由 addslashes() 函數添加的反斜杠。
stripcslashes() 函數刪除由 addcslashes() 函數添加的反斜杠。
strip_tags() 函數剝去 html、xml 以及 PHP 的標簽。
strcspn() 函數返回在找到任何指定的字元之前,在字元串查找的字元數。
strcoll() 函數比較兩個字元串。
strcmp() 函數比較兩個字元串。
strchr() 函數搜索一個字元串在另一個字元串中的第一次出現。
strcasecmp() 函數比較兩個字元串。
str_word_count() 函數計算字元串中的單詞數。
str_split() 函數把字元串分割到數組中。
str_shuffle() 函數隨機地打亂字元串中的所有字元。
str_rot13() 函數對字元串執行 ROT13 編碼。
str_replace() 函數使用一個字元串替換字元串中的另一些字元。
str_repeat() 函數把字元串重復指定的次數。
str_pad() 函數把字元串填充為指定的長度。
str_ireplace() 函數使用一個字元串替換字元串中的另一些字元。
sscanf() 函數根據指定的格式解析來自一個字元串的輸入。
sprintf() 函數把格式化的字元串寫寫入一個變數中。
soundex() 函數計算字元串的 soundex 鍵。
similar_text() 函數計算兩個字元串的匹配字元的數目。
sha1_file() 函數計算文件的 SHA-1 散列。
sha1() 函數計算字元串的 SHA-1 散列。
setlocale() 函數設置地區信息(地域信息)。
rtrim() P rtrim() 函數
PHP String 函數
quotemeta() 函數在字元串中某些預定義的字元前添加反斜杠。
quoted_printable_decode() 函數對經過 quoted-printable 編碼後的字元串進行解碼,返回 8 位的字元串。
printf() 函數輸出格式化的字元串。
print() 函數輸出一個或多個字元串。
parse_str() 函數把查詢字元串解析到變數中。
ord() 函數返回字元串第一個字元的 ASCII 值。
number_format() 函數通過千位分組來格式化數字。
nl2br() 函數在字元串中的每個新行 (\n) 之前插入 HTML 換行符 (<br />)。
nl_langinfo() 函數返回指定的本地信息。
money_format() 函數把字元串格式化為貨幣字元串。
metaphone() 函數計算字元串的 metaphone 鍵。
md5_file() 函數計算文件的 MD5 散列。
md5() 函數計算字元串的 MD5 散列。
ltrim() 函數從字元串左側刪除空格或其他預定義字元。
localeconv() 函數返回包含本地數字及貨幣信息格式的數組。
levenshtein() 函數返回兩個字元串之間的 Levenshtein 距離。
join() 函數把數組元素組合為一個字元串。
implode() 函數把數組元素組合為一個字元串。
htmlspecialchars() 函數把一些預定義的字元轉換為 HTML 實體。
html_entity_decode() chars_decode() 函數
PHP String 函數
htmlentities() 函數把字元轉換為 HTML 實體。
html_entity_decode() 函數把 HTML 實體轉換為字元。
hebrevc() 函數把希伯來文本從右至左的流轉換為左至右的流。它也會把新行 (\n) 轉換為 <br />。
hebrev() 函數把希伯來文本從右至左的流轉換為左至右的流。
get_html_translation_table() 函數返回被 htmlentities() 和 htmlspecialchars() 函數使用的翻譯表。
fprintf() 函數把格式化的字元串寫到指定的輸出流(例如:文件或資料庫)。
explode() 函數把字元串分割為數組。
echo() 函數輸出一個或多個字元串。
crypt() 函數返回使用 DES、Blowfish 或 MD5 加密的字元串。
crc32() 函數計算一個字元串的 crc32 多項式。
count_chars() 函數返回字元串所用字元的信息。
convert_uuencode() 函數使用 uuencode 演算法對字元串進行編碼。
convert_uudecode() 函數對 uuencode 編碼的字元串進行解碼。
convert_cyr_string() 函數把字元由一種 Cyrillic 字元轉換成另一種。
chunk_split() 函數把字元串分割為一連串更小的部分。
chr() 函數從指定的 ASCII 值返回字元。
chop() 函數從字元串的末端開始刪除空白字元或其他預定義字元。
bin2hex() 函數把 ASCII 字元的字元串轉換為十六進制值。
addslashes() 函數在指定的預定義字元前添加反斜杠。
addcslashes() 函數在指定的字元前添加反斜杠。
xpath() 函數運行對 xml 文檔的 XPath 查詢。
simplexml_load_string() 函數把 xml 字元串載入對象中。
simplexml_load_file() 函數把 xml 文檔載入對象中。
simplexml_import_dom() 函數把 DOM 節點轉換為 SimplexmlElement 對象。
registerXPathNamespace() 函數為下一次 XPath 查詢創建命名空間語境。
getNamespace() 函數獲取在 xml 文檔中使用的命名空間。
getName() 函數從 SimplexmlElement 對象獲取 xml 元素的名稱。
getDocNamespaces() 函數從 SimplexmlElement 對象返回在 xml 文檔中聲明的命名空間。
children() 函數獲取指定節點的子節點。
attributes() 函數獲取 Simplexml 元素的屬性。
asxml() 函數以字元串的形式從 SimplexmlElement 對象返回 xml 文檔。
addChild() 函數向指定的 xml 節點添加一個子節點。
addAttribute() 函數給 Simplexml 元素添加一個屬性。
4. php中有哪些常用的庫函數
你是說gb庫這樣擴展函數庫么?
5. 該學習哪些PHP函數PHP常用函數
以下是記php的常用函數,網上轉載的:
php
//===============================時間日期===============================
//y返回年最後兩位,Y年四位數,m月份數字,M月份英文。月份幾號數字,D星期幾英文
$date=date("Y-m-d");
$date=date("Y-m-d H:i:s");//帶時分秒
//include,include_once.require,require_once
//require("file.php") 在PHP程序執行前就會先讀入require所指定引進的文件,如出現錯誤是致命的。
//include("file.php") 可以放在PHP程序的任何位置,PHP程序執行到時才讀入include指定引入的文件,如出現錯誤會提示
//===============================輸出列印===============================
//sprintf("%d","3.2") ;//只格式化,返回格式化後的字元串,不輸出。
//printf("%d","3.2") ;//即格式化,又輸出
//print("3.2") ;//只輸出
//echo "nihao","aa";//可以輸出多個字元串
//print_r(array("a","b","c"));//將數組的鍵值與元素依次顯示
//===============================常用字元串函數===============================
//獲取字元串長度,有多少個字元,空格也算
$str=" sdaf sd ";
$len=strlen($str);
//用第一個參數里的字元串,把後面數組里的每個元素連接起來,返回一個字元串。
$str=implode("-",array("a","b","c"));
//字元串分割方法,返回一個數組,用第一個參數里的字元分割後面的字元串,指定字元的前後和之間都截取,如果指定字元在開頭或結尾則返回的數組開頭或結尾的元素為空字元串
//沒有分割到字元串就返回給數組對應元素一個空值。最後一個限制返回數組長度,可不限制,則一直分割下去。
$array=explode("a","asddad addsadassd dasdadfsdfasdaaa",4);
//print_r($array);
//剔除字元串左邊開頭的空格,並返回
//如有第二個參數則是剔除左邊開頭的空格換成剔除第二個參數里的字元串
$str=ltrim("a asd ","a");
//剔除字元串右邊開頭的空格
$str=rtrim(" asd ");
//把第一個字元串兩邊以第二個參數開頭的字元串剔除。如沒有第二個參數,默認剔除掉字元串兩邊開頭的空格
$str=trim(" sdsdfas ","a");
//從字元串第一個參數里的指定位置開始取多長(多少個)字元,字元串中第一個字元位置從0算。
//如果第二個參數為負則從字元串結尾倒數第幾個開始取多長的字元串。結尾最後一個字元算-1,截取方向總是從左到右
$str=substr("abcdefgh",0,4);
//將第三個參數的第一個參數字元串用參數二字元串替換
$str=str_replace("a","","abcabcAbca");
//與str_replace用法同,只是不區分大小寫
//$str=str_ireplace("a"," ","abcabcAbca");
//返回括弧里字元串的字元全部大寫的字元串
$str=strtoupper("sdaf");
//將括弧里第一個字元串變成大寫後返回
$str=ucfirst("asdf");
//用echo等將括弧里字元串列印在網頁上時原汁原味列印出括弧里的字元串,包括標簽字元
$str=htmlentities("
");
//返回第二個參數字元串在第一個字元串里出現的次數
$int=substr_count("abcdeabcdeablkabd","ab");
//返回第二個字元串在第一個字元串第一次出現的位置,第一個字元位置算0
$int=strpos("asagaab","ab");
//返回第二個字元串在第一個字元串最後一次出現的位置,第一個字元位置算0
$int=strrpos("asagaabadfab","ab");
//截取返回參數一中從左至右第一個出現的參數二到參數一最後一個字元的字元串
$str=strstr("sdafsdgaababdsfgs","ab");
//截取返回參數一中從左至右最後一個出現的參數二到參數一最後一個字元的字元串
$str=strrchr("sdafsdgaababdsfgs","ab");
//將參數二中每一個字元在參數一中相同字元前加"\"
$str=addcslashes("abcdefghijklmn","akd");
//將參數一的字元串填充到參數二指定的長度(單字元個數),參數三為指定填充的字元串,不寫默認空格
//參數四填充位置,0在參數一左側開頭填充,1右側開頭,2兩邊開頭同時。不寫默認在右側開頭填充
$str=str_pad("abcdefgh",10,"at",0);
//依次比較兩字元串對應字元阿斯克碼值,第一對不一樣的,如果參數一里大於參數二里的返回1,反之返回-1,兩字元串完全一樣返回0
$int1=strcmp("b","a");
//返回第一個參數格式化後的數字格式,第二個參數為保留幾個小數,參數三為將小數點換成參數三,參數四為整數部分每三位用什麼字元分割
//後面三個參數都不寫,則默認去掉小數部分,整數每隔三位用逗號,分割。參數三,參數四必須同時存在
$str=number_format(1231233.1415,2,"d","a");
//===============================常用數組方法===============================
$arr=array("k0"=>"a","k1"=>"b","k2"=>"c");
//返回數組元素個數
$int=count($arr);
//判斷第二參數的數組元素中是否有第一個參數元素
$bool=in_array("b",$arr);
//返回括弧中數組所有鍵值組成的新數組原數組不改變
$array=array_keys($arr);
//判斷第二個參數的數組中是否有第一個參數的鍵值,返回真假
$bool=array_key_exists("k1",$arr);
//返回原數組中所有元素值組成的新數組,鍵值從0開始自增,原數組不變
$array=array_values($arr);
//返回當前數組指針指向的鍵值
$key=key($arr);
//返回當前數組指針指向的元素值
$value=current($arr);
//返回當前數組指針指向元素的鍵值及元素值組成的數組,再將指針推向下一位,最後指針指向的是一個空元素返回空
//返回的數組中有四個固定鍵值對應的元素值分別是返回元素的鍵值及元素值,其中0,'key'鍵值都對應返回元素鍵值,1,'value'鍵值都對應返回的元素值
$array=each($arr);
//先將數組指針推向下一位,再返回指針移動後指向的元素值
$value=next($arr);
//將數組指針推向上一位,再返回指針移動後指向的元素值
$value=prev($arr);
//讓數組指針重置指向第一個元素並返回元素值
$value=reset($arr);
//將數組指針指向最後一位元素,並返回最後一位元素值
$value=end($arr);
//將第一個參數以後的參數作為元素追加入第一個參數數組的末尾,索引從最小的沒用過的數值開始計,返回之後的數組長度
$int=array_push($arr,"d","dfsd");
//將第一個參數數組後面所有參數作為元素添加到第一個參數數組開頭處,鍵值以0從第一個元素處重新累加,原非數值的鍵值保持不變,原元素排序位置不變,返回之後的數組長度
$int=array_unshift($arr,"t1","t2");
//返回從數組尾部提取最後一個元素值,並把最後一個元素從原數組中剔除
$value=array_pop($arr);
//array_pop相反,提取返回數組頭一個元素值,並把頭一個元素從原數組中剔除
$value=array_shift($arr);
//讓第一個參數數組達到第二個參數數值長度,將第三個參數作為元素添加到第一個參數數組的末尾,索引從最小沒用過數值開始計並返回,原數組不改變
$array1=array_pad($arr,10,"t10");
//返回一個將原數組中多餘重復元素剔除掉的新數組,原數組不改變
$array=array_unique($array1);
//將原數組鍵值打破重新以元素值的阿斯克碼值從小到大排序,索引從數字0開始重計
$int=sort($array);
//和sort相反,以元素值阿斯柯碼值大小降序重新排序,索引從0重新計
$int=rsort($array);
//返回將第一個參數數組中每一個元素值依次作為鍵值付給參數二數組的數組,兩數組長度必須一致,原數組不改變
$array=array_combine(array("a","b","c","d","e"),$arr);
//將兩個數組合並並返回原數組不變
$array=array_merge($arr,array("a","b","c"));
//在第一個參數數組中從第二個參數數值位置開始截取到第三個參數數值長度的數組鍵值+元素並返回,數組第一個元素位置從0計
$array=array_slice($arr,2,1);
//截取功能和array_slice()一樣,只是將截取部分在原數組中剔除
$array=array_splice($arr,2,1);
//將第一個參數作為第一個元素,每次自增參數三的值,自增後再作為一個元素存在數組中,直到值達到參數二的值存到數組中為止並返回這個數組
//參數一,參數二可以是數字,可以是單個字元,單字元就按阿斯柯碼值算,第三個參數不寫默認每次自增1
$array=range(3,9,2);
//將原數組元素與對應鍵值的對應關系重新隨機排列返回真假
$bool=shuffle($arr);
//計算數組中所有數值型元素值的和
$int=array_sum(array("a",2,"cssf"));
//把一個數組分割為新的數組塊,新數組每個元素都是一個數組,新數組每個元素內有幾個元素由參數二決定
//第三個參數決定元素的鍵值是否保留原鍵值可不寫,true為保留,默認false不保留
$array=array_chunk(array("a"=>"a","b","c","d","e","f","g","h"),2,true);
//json_encode()將數組轉換成JSON格式字元串返回
$arr = array('k1'=>'val1','k2'=>'val2','k3'=>array('v3','v4'));
echo $encode_str = json_encode($arr);
//json_decode()將JSON格式字元串轉換成能強制轉換成數組的對象返回,JSON格式字元串中鍵與值需要引號括起來時必須用雙引號
$decode_arr = (array)json_decode($encode_str);
var_mp($decode_arr);
?>
6. PHP處理數組常用的幾個函數
一、數組操作的基本函數
數組的鍵名和值
array_values($arr); 獲得數組的值
array_keys($arr); 獲得數組的鍵名
array_flip($arr); 數組中的值與鍵名互換(如果有重復前面的會被後面的覆蓋)
in_array("apple",$arr); 在數組中檢索apple
array_search("apple",$arr); 在數組中檢索apple ,如果存在返回鍵名
array_key_exists("apple",$arr); 檢索給定的鍵名是否存在數組中
isset($arr[apple]): 檢索給定的鍵名是否存在數組中
數組的內部指針
current($arr); 返回數組中的當前單元
pos($arr); 返回數組中的當前單元
key($arr); 返回數組中當前單元的鍵名
prev($arr); 將數組中的內部指針倒回一位
next($arr); 將數組中的內部指針向前移動一位
end($arr); 將數組中的內部指針指向最後一個單元
reset($arr; 將數組中的內部指針指向第一個單元
each($arr); 將返回數組當前元素的一個鍵名/值的構造數組,並使數組指針向前移動一位
list($key,$value)=each($arr); 獲得數組當前元素的鍵名和值
數組和變數之間的轉換
extract($arr);用於把數組中的元素轉換成變數導入到當前文件中,鍵名當作變數名,值作為變數值
註:(第二個參數很重要,可以看手冊使用)使用方法 echo $a;
compact(var1,var2,var3);用給定的變數名創建一個數組
二、數組的分段和填充
數組的分段
array_slice($arr,0,3); 可以將數組中的一段取出,此函數忽略鍵名
array_splice($arr,0,3,array("black","maroon")); 可以將數組中的一段取出,與上個函數不同在於返回的序列從原數組中刪除
分割多個數組
array_chunk($arr,3,TRUE); 可以將一個數組分割成多個,TRUE為保留原數組的鍵名
數組的填充
array_pad($arr,5,'x'); 將一個數組填補到制定長度
三、數組與棧
array_push($arr,"apple","pear"); 將一個或多個元素壓入數組棧的末尾(入棧),返回入棧元素的個數
array_pop($arr); 將數組棧的最後一個元素彈出(出棧)
四、數組與列隊
array_shift($arr);數組中的第一個元素移出並作為結果返回(數組長度減1,其他元素向前移動一位,數字鍵名改為從零技術,文字鍵名不變)
array_unshift($arr,"a",array(1,2));在數組的開頭插入一個或多個元素
五、回調函數
array_walk($arr,'function','words'); 使用用戶函數對數組中的每個成員進行處理(第三個參數傳遞給回調函數function)
array_mpa("function",$arr1,$arr2); 可以處理多個數組(當使用兩個或更多數組時,他們的長度應該相同)
array_filter($arr,"function"); 使用回調函數過濾數組中的每個元素,如果回調函數為TRUE,數組的當前元素會被包含在返回的結果數組中,數組的鍵名保留不變
array_rece($arr,"function","*"); 轉化為單值函數(*為數組的第一個值)
六、數組的排序
通過元素值對數組排序
sort($arr); 由小到大的順序排序(第二個參數為按什麼方式排序)忽略鍵名的數組排序
rsort($arr); 由大到小的順序排序(第二個參數為按什麼方式排序)忽略鍵名的數組排序
usort($arr,"function"); 使用用戶自定義的比較函數對數組中的值進行排序(function中有兩個參數,0表示相等,正數表示第一個大於第二個,負數表示第一個小於第二個)忽略鍵名的數組排序
asort($arr); 由小到大的順序排序(第二個參數為按什麼方式排序)保留鍵名的數組排序
arsort($arr); 由大到小的順序排序(第二個參數為按什麼方式排序)保留鍵名的數組排序
uasort($arr,"function"); 使用用戶自定義的比較函數對數組中的值進行排序(function中有兩個參數,0表示相等,正數表示第一個大於第二個,負數表示第一個小於第二個)保留鍵名的數組排序
通過鍵名對數組排序
ksort($arr); 按照鍵名正序排序
krsort($arr); 按照鍵名逆序排序
uksort($arr,"function"); 使用用戶自定義的比較函數對數組中的鍵名進行排序(function中有兩個參數,0表示相等,正數表示第一個大於第二個,負數表示第一個小於第二個)
自然排序法排序
natsort($arr); 自然排序(忽略鍵名)
natcasesort($arr); 自然排序(忽略大小寫,忽略鍵名)
七、數組的計算
數組元素的求和
array_sum($arr); 對數組內部的所有元素做求和運算
數組的合並
array_merge($arr1,$arr2); 合並兩個或多個數組(相同的字元串鍵名,後面的覆蓋前面的,相同的數字鍵名,後面的不會做覆蓋操作,而是附加到後面)
「+」$arr1+$arr2; 對於相同的鍵名只保留後一個
array_merge_recursive($arr1,$arr2); 遞歸合並操作,如果數組中有相同的字元串鍵名,這些值將被合並到一個數組中去。如果一個值本身是一個數組,將按照相應的鍵名把它合並為另一個數組。當數組 具有相同的數組鍵名時,後一個值將不會覆蓋原來的值,而是附加到後面
數組的差集
array_diff($arr1,$arr2); 返回差集結果數組
array_diff_assoc($arr1,$arr2,$arr3); 返回差集結果數組,鍵名也做比較
數組的交集
array_intersect($arr1,$arr2); 返回交集結果數組
array_intersect_assoc($arr1,$arr2); 返回交集結果數組,鍵名也做比較
八、其他的數組函數
range(0,12); 創建一個包含指定范圍單元的數組
array_unique($arr); 移除數組中重復的值,新的數組中會保留原始的鍵名
array_reverse($arr,TRUE); 返回一個單元順序與原數組相反的數組,如果第二個參數為TRUE保留原來的鍵名
//srand((float)microtime()*10000000); 隨機種子觸發器
array_rand($arr,2); 從數組中隨機取出一個或 多個元素
shuffle($arr); 將數組的順序打亂
求課吧有很多關於PHP編程方面的教程
7. PHP 函數有哪些
array_values($arr); 獲得數組的值
array_keys($arr); 獲得數組的鍵名
array_flip($arr); 數組中的值與鍵名互換(如果有重復前面的會被後面的覆蓋)
in_array("apple",$arr); 在數組中檢索apple
array_search("apple",$arr); 在數組中檢索apple ,如果存在返回鍵名
array_key_exists("apple",$arr); 檢索給定的鍵名是否存在數組中
isset($arr[apple]): 檢索給定的鍵名是否存在數組中
current($arr); 返回數組中的當前單元
pos($arr); 返回數組中的當前單元
key($arr); 返回數組中當前單元的鍵名
prev($arr); 將數組中的內部指針倒回一位
next($arr); 將數組中的內部指針向前移動一位
end($arr); 將數組中的內部指針指向最後一個單元
reset($arr; 將數組中的內部指針指向第一個單元
each($arr); 將返回數組當前元素的一個鍵名/值的構造數組,並使數組指針向前移動一位
list($key,$value)=each($arr); 獲得數組當前元素的鍵名和值
數組和變數之間的轉換
extract($arr);用於把數組中的元素轉換成變數導入到當前文件中,鍵名當作變數名,值作為變數值
註:(第二個參數很重要,可以看手冊使用)使用方法 echo $a;
compact(var1,var2,var3);用給定的變數名創建一個數組
等等 還有好多 ,看一一看
8. php的常用函數都有哪些要必須熟記的
首先是資料庫方面的函數,例如:mysql_connect,mysql_create_db,mysql_fetch_array,mysql_select_db,mysql_query,資料庫的函數眾多,最好寫成一個類,可以參考discuz,phpcms等,如果是php5,可以使用PDO php的數組很強大,很多地方要用到最好把關於數組的循環,分割,刪除等記住,例如:is_array,implode,explode,array_keys,array_merge等 還有就是記牢一些安全性的函數例如:addslashes,htmlspecialchars等 其他還有字元處理:subtr,strlen,trim等 初學者要盡量使用專業的編輯器,例如:UE,editplus等,有利於拼寫和記憶函數,少用IDE工具,例如zendstudio等,這些雖然方便,但是不利於記憶函數,加入沒有了IDE的情況下,就成了盲人了,雖有思路,但寫不出代碼來。
9. PHP 採集程序中常用的函數
復制代碼
代碼如下:
//獲得當前的腳本網址
function
get_php_url()
{
if(!empty($_SERVER[」REQUEST_URI」]))
{
$scriptName
=
$_SERVER[」REQUEST_URI」];
$nowurl
=
$scriptName;
}
else
{
$scriptName
=
$_SERVER[」PHP_SELF」];
if(empty($_SERVER[」QUERY_STRING」]))
$nowurl
=
$scriptName;
else
$nowurl
=
$scriptName.」?」.$_SERVER[」QUERY_STRING」];
}
return
$nowurl;
}
//把全形數字轉為半形數字
function
GetAlabNum($fnum)
{
$nums
=
array(」0」,」1」,」2」,」3」,」4」,」5」,」6」,」7」,」8」,」9」);
$fnums
=
「0123456789″;
for($i=0;$i<=9;$i++)
$fnum
=
str_replace($nums[$i],$fnums[$i],$fnum);
$fnum
=
ereg_replace(」[^0-9\.]|^0{1,}」,」」,$fnum);
if($fnum==」」)
$fnum=0;
return
$fnum;
}
//去除HTML標記
function
Text2Html($txt)
{
$txt
=
str_replace(」
「,」」,$txt);
$txt
=
str_replace(」<」,」<」,$txt);
$txt
=
str_replace(」>」,」>」,$txt);
$txt
=
preg_replace(」/[\r\n]{1,}/isU」,」<br/>\r\n」,$txt);
return
$txt;
}
//清除HTML標記
function
ClearHtml($str)
{
$str
=
str_replace('<','<',$str);
$str
=
str_replace('>','>',$str);
return
$str;
}
//相對路徑轉化成絕對路徑
function
relative_to_absolute($content,
$feed_url)
{
preg_match('/(http|https|ftp):\/\//',
$feed_url,
$protocol);
$server_url
=
preg_replace(」/(http|https|ftp|news):\/\//」,
「」,
$feed_url);
$server_url
=
preg_replace(」/\/.*/」,
「」,
$server_url);
if
($server_url
==
」)
{
return
$content;
}
if
(isset($protocol[0]))
{
$new_content
=
preg_replace('/href=」\//',
『href=」『.$protocol[0].$server_url.'/',
$content);
$new_content
=
preg_replace('/src=」\//',
'src=」『.$protocol[0].$server_url.'/',
$new_content);
}
else
{
$new_content
=
$content;
}
return
$new_content;
}
//取得所有鏈接
function
get_all_url($code){
preg_match_all('/<a\s+href=[」|\']?([^>」\'
]+)[」|\']?\s*[^>]*>([^>]+)<\/a>/i',$code,$arr);
return
array('name'=>$arr[2],'url'=>$arr[1]);
}
//獲取指定標記中的內容
function
get_tag_data($str,
$start,
$end)
{
if
(
$start
==
」
||
$end
==
」
)
{
return;
}
$str
=
explode($start,
$str);
$str
=
explode($end,
$str[1]);
return
$str[0];
}
//HTML表格的每行轉為CSV格式數組
function
get_tr_array($table)
{
$table
=
preg_replace(」『<td[^>]*?>'si」,'」『,$table);
$table
=
str_replace(」</td>」,'」,',$table);
$table
=
str_replace(」</tr>」,」{tr}」,$table);
//去掉
HTML
標記
$table
=
preg_replace(」『<[\/\!]*?[^<>]*?>'si」,」」,$table);
//去掉空白字元
$table
=
preg_replace(」『([\r\n])[\s]+'」,」」,$table);
$table
=
str_replace(」
「,」」,$table);
$table
=
str_replace(」
「,」」,$table);
$table
=
explode(」,{tr}」,$table);
array_pop($table);
return
$table;
}
//將HTML表格的每行每列轉為數組,採集表格數據
function
get_td_array($table)
{
$table
=
preg_replace(」『<table[^>]*?>'si」,」」,$table);
$table
=
preg_replace(」『<tr[^>]*?>'si」,」」,$table);
$table
=
preg_replace(」『<td[^>]*?>'si」,」」,$table);
$table
=
str_replace(」</tr>」,」{tr}」,$table);
$table
=
str_replace(」</td>」,」{td}」,$table);
//去掉
HTML
標記
$table
=
preg_replace(」『<[\/\!]*?[^<>]*?>'si」,」」,$table);
//去掉空白字元
$table
=
preg_replace(」『([\r\n])[\s]+'」,」」,$table);
$table
=
str_replace(」
「,」」,$table);
$table
=
str_replace(」
「,」」,$table);
$table
=
explode('{tr}',
$table);
array_pop($table);
foreach
($table
as
$key=>$tr)
{
$td
=
explode('{td}',
$tr);
array_pop($td);
$td_array[]
=
$td;
}
return
$td_array;
}
//返回字元串中的所有單詞
$distinct=true
去除重復
function
split_en_str($str,$distinct=true)
{
preg_match_all('/([a-zA-Z]+)/',$str,$match);
if
($distinct
==
true)
{
$match[1]
=
array_unique($match[1]);
}
sort($match[1]);
return
$match[1];
}
10. PHP 中 常用的語句 和 函數
語句就是常用的語法結構:比如
for(){}
foreach(){}
class classname{}
function name(){}
if(){}else if(){}...else{}
函數的話就是:能夠完成一定功能的代碼塊;
分為自定義函數和系統函數:
常用函數肯定就是指的是系統函數:
比如:截取字元串:substr()
產生隨機數:rand()
想了解更多的話,可以參考:www.w3school.com.cn
或者追問我