HP 中的 $_GET 和 $_POST 變量用于檢索表單中的信息,比如用戶輸入。
PHP 表單處理
有一點(diǎn)很重要的事情值得注意,當(dāng)處理 HTML 表單時(shí),PHP 能把來(lái)自 HTML 頁(yè)面中的表單元素自動(dòng)變成可供 PHP 腳本使用。
實(shí)例
下面的實(shí)例包含了一個(gè) HTML 表單,帶有兩個(gè)輸入框和一個(gè)提交按鈕。
form.html 文件代碼:
<pre><html><head><metacharset="utf-8"><title>菜鳥(niǎo)教程(runoob.com)</title></head><body><formaction="welcome.php"method="post">名字: <inputtype="text"name="fname">年齡: <inputtype="text"name="age"><inputtype="submit"value="提交"></form></body></html>
當(dāng)用戶填寫(xiě)完上面的表單并點(diǎn)擊提交按鈕時(shí),表單的數(shù)據(jù)會(huì)被送往名為 "welcome.php" 的 PHP 文件:
welcome.php 文件代碼:
<pre>歡迎 <?phpecho $_POST["fname"]; ?>!<br>你的年齡是 <?phpecho $_POST["age"]; ?> 歲。
通過(guò)瀏覽器訪問(wèn)演示如下:
PHP 獲取下拉菜單的數(shù)據(jù)
PHP 下拉菜單單選
以下實(shí)例我們?cè)O(shè)置了下拉菜單三個(gè)選項(xiàng),表單使用 GET 方式獲取數(shù)據(jù),action 屬性值為空表示提交到當(dāng)前腳本,我們可以通過(guò) select 的 name 屬性獲取下拉菜單的值:
php_form_select.php 文件代碼:
<?php$q = isset($_GET['q'])? htmlspecialchars($_GET['q']) : '';if($q){if($q =='RUNOOB'){echo'菜鳥(niǎo)教程<br>http://www.runoob.com'; }elseif($q =='GOOGLE'){echo'Google 搜索<br>http://www.google.com'; }elseif($q =='TAOBAO'){echo'淘寶<br>http://www.taobao.com'; }}else{?>
<formaction=""method="get"><selectname="q"><optionvalue="">選擇一個(gè)站點(diǎn):</option><optionvalue="RUNOOB">Runoob</option><optionvalue="GOOGLE">Google</option><optionvalue="TAOBAO">Taobao</option></select><inputtype="submit"value="提交"></form>
<?php}?>
PHP 下拉菜單多選
如果下拉菜單是多選的( multiple="multiple"),我們可以通過(guò)將設(shè)置 select name="q[]" 以數(shù)組的方式獲取,以下使用 POST 方式提交,代碼如下所示:
php_form_select_mul.php 文件代碼:
<?php$q = isset($_POST['q'])? $_POST['q'] : '';if(is_array($q)){$sites = array('RUNOOB' => ' http://www.runoob.com', 'GOOGLE' => 'Google 搜索: http://www.google.com', 'TAOBAO' => '淘寶: http://www.taobao.com', ); foreach($qas$val){// PHP_EOL 為常量,用于換行echo$sites[$val] . PHP_EOL; }}else{?>
<formaction=""method="post"><selectmultiple="multiple"name="q[]"><optionvalue="">選擇一個(gè)站點(diǎn):</option><optionvalue="RUNOOB">Runoob</option><optionvalue="GOOGLE">Google</option><optionvalue="TAOBAO">Taobao</option></select><inputtype="submit"value="提交"></form>
<?php}?>
單選按鈕表單
PHP 單選按鈕表單中 name 屬性的值是一致的,value 值是不同的,代碼如下所示:
php_form_radio.php 文件代碼:
<?php$q = isset($_GET['q'])? htmlspecialchars($_GET['q']) : '';if($q){if($q =='RUNOOB'){echo'菜鳥(niǎo)教程<br>http://www.runoob.com'; }elseif($q =='GOOGLE'){echo'Google 搜索<br>http://www.google.com'; }elseif($q =='TAOBAO'){echo'淘寶<br>http://www.taobao.com'; }}else{
?><formaction=""method="get"><inputtype="radio"name="q"value="RUNOOB"/>Runoob <inputtype="radio"name="q"value="GOOGLE"/>Google <inputtype="radio"name="q"value="TAOBAO"/>Taobao <inputtype="submit"value="提交"></form>
<?php}?>
checkbox 復(fù)選框
PHP checkbox 復(fù)選框可以選擇多個(gè)值:
php_form_select_checkbox.php 文件代碼:
<?php$q = isset($_POST['q'])? $_POST['q'] : '';if(is_array($q)){$sites = array('RUNOOB' => http://www.runoob.com', 'GOOGLE' => 'Google 搜索: http://www.google.com', 'TAOBAO' => '淘寶: http://www.taobao.com', ); foreach($qas$val){// PHP_EOL 為常量,用于換行echo$sites[$val] . PHP_EOL; }}else{
?><formaction=""method="post"><inputtype="checkbox"name="q[]"value="RUNOOB"> Runoob<br><inputtype="checkbox"name="q[]"value="GOOGLE"> Google<br><inputtype="checkbox"name="q[]"value="TAOBAO"> Taobao<br><inputtype="submit"value="提交"></form>
<?php}?>
表單驗(yàn)證
應(yīng)該在任何可能的時(shí)候?qū)τ脩糨斎脒M(jìn)行驗(yàn)證(通過(guò)客戶端腳本)。瀏覽器驗(yàn)證速度更快,并且可以減輕服務(wù)器的負(fù)載。
如果用戶輸入需要插入數(shù)據(jù)庫(kù),您應(yīng)該考慮使用服務(wù)器驗(yàn)證。在服務(wù)器驗(yàn)證表單的一種好的方式是,把表單傳給它自己,而不是跳轉(zhuǎn)到不同的頁(yè)面。這樣用戶就可以在同一張表單頁(yè)面得到錯(cuò)誤信息。用戶也就更容易發(fā)現(xiàn)錯(cuò)誤了。
下表匯總了包括php字符串函數(shù),php數(shù)組函數(shù),php數(shù)學(xué)函數(shù),mysql函數(shù),文件目錄函數(shù),GD庫(kù)函數(shù),SESSION函數(shù),Date/Time函數(shù)等
竅門(mén): Ctrl+F 快速查找
字符串相關(guān)操作函數(shù) | |
去除空格或其他字符 | |
trim | 刪除字符串 兩端 空格或其他預(yù)定義字符 |
rtrim | 刪除字符串 右邊 空格或其他預(yù)定義字符 |
chop | rtrim() 的別名 chop() 與 Perl 的 chop() 函數(shù)有所不同,它會(huì)刪除字符串的最后一個(gè)字符。 |
ltrim | 刪除字符串 左邊 空格或其他預(yù)定義字符 |
字符串生成與轉(zhuǎn)換 | |
str_pad | 使用另一個(gè)字符串填充字符串為指定長(zhǎng)度 |
str_replace | 字符串替換 |
str_split | 將字符串轉(zhuǎn)換為數(shù)組 |
strrev | 反轉(zhuǎn)字符串 |
wordwrap | 打斷字符串為指定數(shù)量的字串 |
str_shuffle | 隨機(jī)打亂一個(gè)字符串 |
parse_str | 將字符串解析成變量 |
number_format | 通過(guò)千位分組來(lái)格式化字符串 |
字符串大小寫(xiě)轉(zhuǎn)換 | |
strtolower | 將字符串轉(zhuǎn)化為小寫(xiě) |
strtoupper | 將字符串轉(zhuǎn)化為大寫(xiě) |
ucfirst | 將字符串的首字母轉(zhuǎn)換為大寫(xiě) |
ucwords | 將字符串中每個(gè)單詞的首字母轉(zhuǎn)換為大寫(xiě) |
html標(biāo)簽關(guān)聯(lián) | |
htmlentities | 將字符轉(zhuǎn)換為HTML實(shí)體 |
htmlspecialchars | 預(yù)定義字符串轉(zhuǎn)HTML編碼 |
nl2br | 在字符串所有新行之前插入 HTML 換行標(biāo)記 \n轉(zhuǎn)換為<br>標(biāo)簽 |
strip_tags | 從字符串中去除 HTML 和 PHP 標(biāo)記 |
addcslashes | 以 C 語(yǔ)言風(fēng)格使用反斜線轉(zhuǎn)義字符串中的字符 |
stripcslashes | 反引用一個(gè)使用 addcslashes() 轉(zhuǎn)義的字符串 |
addslashes | 使用反斜線引用字符串 |
stripslashes | 刪除由 addslashes 添加的轉(zhuǎn)義字符 |
quotemeta | 字符串中某些預(yù)定義字符串前加反斜杠 |
chr | 從指定的 ASCII 值返回字符 |
ord | 返回字符串第一個(gè)字符的 ASCII 值 |
字符串比較 | |
strcasecmp | 不區(qū)分大小寫(xiě)比較兩個(gè)字符串 |
strcmp | 區(qū)分大小寫(xiě)比較兩個(gè)字符串 |
strncmp | 比較字符串前N個(gè)字符,區(qū)分大小寫(xiě) |
strncasecmp | 比較字符串前N個(gè)字符,不區(qū)分大小寫(xiě) |
strnatmp | 自然順序法比較字符串長(zhǎng)度,區(qū)分大小寫(xiě) |
strnatcasecmp | 自然順序法比較字符串長(zhǎng)度,不區(qū)分大小寫(xiě) |
字符串查找替換 | |
str_replace | 字符串替換操作,區(qū)分大小寫(xiě) |
str_ireplace | 字符串替換操作,不區(qū)分大小寫(xiě) |
substr_count | 統(tǒng)計(jì)一個(gè)字符串,在另一個(gè)字符串中出現(xiàn)的次數(shù) |
substr_replace | 替換字符串中的某串為另一個(gè)字符串 |
similar_text | 返回兩字符串相同字符的數(shù)量 |
strrchr | 返回一個(gè)字符串在另一個(gè)字符串中最后一次出現(xiàn)位置開(kāi)始到末尾的字符串 |
strstr | 返回一個(gè)字符串在另一個(gè)字符串中開(kāi)始位置到結(jié)束位置的字符串 |
strchr | strstr的別名,返回一個(gè)字符串在另一個(gè)中首次出現(xiàn)位置開(kāi)始到末尾的字符串 |
stristr | 返回一個(gè)字符串在另一個(gè)字符串中開(kāi)始位置到結(jié)束位置的字符串,不區(qū)分大小寫(xiě) |
strtr | 轉(zhuǎn)換字符串中某些字符 |
strpos | 尋找字符中某些字符最先出現(xiàn)的位置 |
stripos | 尋找字符中某些字符最先出現(xiàn)的位置,不區(qū)分大小寫(xiě) |
strrpos | 尋找字符中某些字符最后出現(xiàn)的位置 |
strripos | 尋找字符中某些字符最后出現(xiàn)的位置,不區(qū)分大小寫(xiě) |
strspn | 返回字符串中首次符合mask的字符串長(zhǎng)度 |
strcspn | 返回字符串中不符合mask的字符串的長(zhǎng)度 |
字符串統(tǒng)計(jì) | |
str_word_count | 統(tǒng)計(jì)字符串含有的單詞數(shù) |
strlen | 統(tǒng)計(jì)字符串長(zhǎng)度 |
count_chars | 統(tǒng)計(jì)字符串中所有字母出現(xiàn)的次數(shù)(0..255) |
字符串編碼 | |
md5 | 計(jì)算字符串的 MD5 散列值 |
hash | 生成一個(gè)哈希碼 |
數(shù)組相關(guān)函數(shù) | |
創(chuàng)建數(shù)組 | |
array | 生成一個(gè)數(shù)組 |
array_combine | 生成一個(gè)數(shù)組,用一個(gè)數(shù)組的值作為鍵名,另一個(gè)數(shù)組的值作為值 |
range | 創(chuàng)建并返回一個(gè)包含指定范圍的元素的數(shù)組 |
compact | 創(chuàng)建一個(gè)由參數(shù)所帶變量組成的數(shù)組 |
array_fill | 用給定的值填充生成數(shù)組 |
數(shù)組合并和拆分 | |
array_chunk | 把一個(gè)數(shù)組分割為新的數(shù)組塊 |
array_merge | 把兩個(gè)或多個(gè)數(shù)組合并成一個(gè)數(shù)組 |
array_slice | 在數(shù)組中根據(jù)條件取出一段值,并返回。 |
數(shù)組比較 | |
array_diff | 返回兩個(gè)數(shù)組的差集數(shù)組 |
array_intersect | 返回兩個(gè)或多個(gè)數(shù)組的交集數(shù)組 |
數(shù)組查找替換 | |
array_search | 在數(shù)組中查找一個(gè)鍵值 |
array_splice | 把數(shù)組一部分刪除把其他值替代 |
array_sum | 返回?cái)?shù)組中所有值的總和 |
in_array | 在數(shù)組中搜索指定的值,區(qū)分大小寫(xiě) |
array_key_exists | 判斷某個(gè)數(shù)組中是否存在指定的key |
數(shù)組指針操作 | |
key | 返回?cái)?shù)組內(nèi)部指針當(dāng)前指向的鍵名 |
current | 返回?cái)?shù)組中的當(dāng)前元素 |
next | 把指向當(dāng)前元素的指針移動(dòng)到下一個(gè)元素位置,并返回當(dāng)前元素的值 |
prev | 把指向當(dāng)前元素的指針移動(dòng)到上一個(gè)元素位置,并返回當(dāng)前元素的值 |
end | 將數(shù)組內(nèi)部指針指向最后一個(gè)元素,并返回該元素的值 (如果成功) |
reset | 把數(shù)組內(nèi)部指針指向第一個(gè)元素,并返回該元素的值 |
list | 用數(shù)組中的元素為一組變量賦值 |
array_shift | 刪除數(shù)組中的第一個(gè)元素,并返回被刪除元素的值 |
array_unshif | 在數(shù)組開(kāi)頭插入一個(gè)或者多個(gè)元素 |
array_push | 向數(shù)組最后壓入一個(gè)或多個(gè)元素 |
array_pop | 刪除數(shù)組最后一個(gè)元素 |
數(shù)組鍵值操作 | |
shuffle | 將數(shù)組打亂,保留鍵名 |
count | 計(jì)算數(shù)組中單元個(gè)數(shù)或者對(duì)象屬性個(gè)數(shù) |
array_flip | 返回一個(gè)鍵值翻轉(zhuǎn)后的數(shù)組 |
array_keys | 返回?cái)?shù)組所有鍵,組成一個(gè)數(shù)組 |
array_values | 返回?cái)?shù)組所有值,組成一個(gè)數(shù)組 |
array_reverse | 返回一個(gè)元素順序相反的數(shù)組 |
array_count_values | 統(tǒng)計(jì)數(shù)組中所有值出現(xiàn)的次數(shù) |
array_rand | 從數(shù)組中隨機(jī)抽取一個(gè)或者多個(gè)元素,注意是鍵名 |
each | 返回?cái)?shù)組中當(dāng)前的鍵/值對(duì)并將數(shù)組指針向前移動(dòng)一步 |
array_unique | 移除數(shù)組中重復(fù)的值 |
數(shù)組排序 | |
sort | 對(duì)數(shù)組排序 |
rsort | 對(duì)數(shù)組逆向排序 |
asort | 對(duì)數(shù)組進(jìn)行排序并保持索引關(guān)系 |
arsort | 對(duì)數(shù)組進(jìn)行逆向排序并保持索引關(guān)系 |
ksort | 對(duì)數(shù)組按照鍵名排序 |
krsort | 對(duì)數(shù)組按照鍵名逆向排序 |
natsort | 用“自然排序”算法對(duì)數(shù)組排序 |
natcasesort | 用“自然排序”算法對(duì)數(shù)組進(jìn)行不區(qū)分大小寫(xiě)字母的排序 |
數(shù)學(xué)相關(guān)函數(shù) | |
abs | 求絕對(duì)值 |
ceil | 進(jìn)一法取整 |
floor | 舍去法取整 |
fmod | 返回除法的浮點(diǎn)數(shù)余數(shù) |
pow | 返回?cái)?shù)的N次方 |
round | 浮點(diǎn)數(shù)四舍五入法 |
sqrt | 求平方根 |
max | 求最大值 |
min | 求最小值 |
mt_rand | 更好的隨機(jī)數(shù) |
rand | 隨機(jī)數(shù) |
pi | 獲得圓周率 |
octdec | 八進(jìn)制轉(zhuǎn)換為十進(jìn)制 |
mysql相關(guān)函數(shù) | |
mysql_affected_rows | 取得前一次 MySQL 操作所影響的記錄行數(shù) |
mysql_client_encoding | 返回字符集的名稱 |
mysql_close | 關(guān)閉 MySQL 連接 |
mysql_connect | 打開(kāi)一個(gè)到 MySQL 服務(wù)器的連接 |
mysql_create_db | 新建一個(gè) MySQL 數(shù)據(jù)庫(kù) |
mysql_data_seek | 移動(dòng)內(nèi)部結(jié)果的指針 |
mysql_db_name | 取得結(jié)果數(shù)據(jù) |
mysql_db_query | 發(fā)送一條 MySQL 查詢 |
mysql_drop_db | 丟棄(刪除)一個(gè) MySQL 數(shù)據(jù)庫(kù) |
mysql_errno | 返回上一個(gè) MySQL 操作中的錯(cuò)誤信息的數(shù)字編碼 |
mysql_error | 返回上一個(gè) MySQL 操作產(chǎn)生的文本錯(cuò)誤信息 |
mysql_escape_string | 轉(zhuǎn)義一個(gè)字符串用于 mysql_query |
mysql_fetch_array | 從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組,或數(shù)字?jǐn)?shù)組,或二者兼有 |
mysql_fetch_assoc | 從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組 |
mysql_fetch_field | 從結(jié)果集中取得列信息并作為對(duì)象返回 |
mysql_fetch_lengths | 取得結(jié)果集中每個(gè)輸出的長(zhǎng)度 |
mysql_fetch_object | 從結(jié)果集中取得一行作為對(duì)象 |
mysql_fetch_object | 從結(jié)果集中取得一行作為枚舉數(shù)組 |
mysql_field_flags | 從結(jié)果中取得和指定字段關(guān)聯(lián)的標(biāo)志 |
mysql_field_len | 返回指定字段的長(zhǎng)度 |
mysql_field_name | 取得結(jié)果中指定字段的字段名 |
mysql_field_seek | 將結(jié)果集中的指針設(shè)定為制定的字段偏移量 |
mysql_field_table | 取得指定字段所在的表名 |
mysql_field_type | 取得結(jié)果集中指定字段的類(lèi)型 |
mysql_free_result | 釋放結(jié)果內(nèi)存 |
mysql_get_client_info | 取得 MySQL 客戶端信息 |
mysql_get_host_info | 取得 MySQL 主機(jī)信息 |
mysql_get_proto_info | 取得 MySQL 協(xié)議信息 |
mysql_get_server_info | 取得 MySQL 服務(wù)器信息 |
mysql_info | 取得最近一條查詢的信息 |
mysql_insert_id | 取得上一步 INSERT 操作產(chǎn)生的 ID |
mysql_list_dbs | 列出 MySQL 服務(wù)器中所有的數(shù)據(jù)庫(kù) |
mysql_list_fields | 列出 MySQL 結(jié)果中的字段 |
mysql_list_processes | 列出 MySQL 進(jìn)程 |
mysql_list_tables | 列出 MySQL 數(shù)據(jù)庫(kù)中的表 |
mysql_num_fields | 取得結(jié)果集中字段的數(shù)目 |
mysql_num_rows | 取得結(jié)果集中行的數(shù)目 |
mysql_pconnect | 打開(kāi)一個(gè)到 MySQL 服務(wù)器的持久連接 |
mysql_ping | Ping 一個(gè)服務(wù)器連接,如果沒(méi)有連接則重新連接 |
mysql_query | 發(fā)送一條 MySQL 查詢 |
mysql_real_escape_string | 轉(zhuǎn)義 SQL 語(yǔ)句中使用的字符串中的特殊字符,并考慮到連接的當(dāng)前字符集 |
mysql_result | 取得結(jié)果數(shù)據(jù) |
mysql_select_db | 選擇 MySQL 數(shù)據(jù)庫(kù) |
mysql_set_charset | Sets the client character set |
mysql_stat | 取得當(dāng)前系統(tǒng)狀態(tài) |
mysql_tablename | 取得表名 |
mysql_thread_id | 返回當(dāng)前線程的 ID |
mysql_unbuffered_query | 向 MySQL 發(fā)送一條 SQL 查詢,并不獲取和緩存結(jié)果的行 |
文件目錄處理相關(guān)函數(shù) | |
basename | 返回路徑中的文件名部分 |
chgrp | 改變文件所屬的組 |
chmod | 改變文件模式 |
chown | 改變文件的所有者 |
clearstatcache | 清除文件狀態(tài)緩存 |
copy | 拷貝文件 |
delete | 參見(jiàn) unlink 或 unset |
dirname | 返回路徑中的目錄部分 |
disk_free_space | 返回目錄中的可用空間 |
disk_total_space | 返回一個(gè)目錄的磁盤(pán)總大小 |
diskfreespace | disk_free_space 的別名 |
fclose | 關(guān)閉一個(gè)已打開(kāi)的文件指針 |
feof | 測(cè)試文件指針是否到了文件結(jié)束的位置 |
fflush | 將緩沖內(nèi)容輸出到文件 |
fgetc | 從文件指針中讀取字符 |
fgetcsv | 從文件指針中讀入一行并解析 CSV 字段 |
fgets | 從文件指針中讀取一行 |
fgetss | 從文件指針中讀取一行并過(guò)濾掉 HTML 標(biāo)記 |
file_exists | 檢查文件或目錄是否存在 |
file_get_contents | 將整個(gè)文件讀入一個(gè)字符串 |
file_put_contents | 將一個(gè)字符串寫(xiě)入文件 |
file | 把整個(gè)文件讀入一個(gè)數(shù)組中 |
fileatime | 取得文件的上次訪問(wèn)時(shí)間 |
filectime | 取得文件的 inode 修改時(shí)間 |
filegroup | 取得文件的組 |
fileinode | 取得文件的 inode |
filemtime | 取得文件修改時(shí)間 |
fileowner | 取得文件的所有者 |
fileperms | 取得文件的權(quán)限 |
filesize | 取得文件大小 |
filetype | 取得文件類(lèi)型 |
flock | 輕便的咨詢文件鎖定 |
fnmatch | 用模式匹配文件名 |
fopen | 打開(kāi)文件或者 URL |
fpassthru | 輸出文件指針處的所有剩余數(shù)據(jù) |
fputcsv | 將行格式化為 CSV 并寫(xiě)入文件指針 |
fputs | fwrite 的別名 |
fread | 讀取文件(可安全用于二進(jìn)制文件) |
fscanf | 從文件中格式化輸入 |
fseek | 在文件指針中定位 |
fstat | 通過(guò)已打開(kāi)的文件指針取得文件信息 |
ftell | 返回文件指針讀/寫(xiě)的位置 |
ftruncate | 將文件截?cái)嗟浇o定的長(zhǎng)度 |
fwrite | 寫(xiě)入文件(可安全用于二進(jìn)制文件) |
glob | 尋找與模式匹配的文件路徑 |
is_dir | 判斷給定文件名是否是一個(gè)目錄 |
is_executable | 判斷給定文件名是否可執(zhí)行 |
is_file | 判斷給定文件名是否為一個(gè)正常的文件 |
is_link | 判斷給定文件名是否為一個(gè)符號(hào)連接 |
is_readable | 判斷給定文件名是否可讀 |
is_uploaded_file | 判斷文件是否是通過(guò) HTTP POST 上傳的 |
is_writable | 判斷給定的文件名是否可寫(xiě) |
is_writeable | is_writable 的別名 |
lchgrp | Changes group ownership of symlink |
lchown | Changes user ownership of symlink |
link | 建立一個(gè)硬連接 |
linkinfo | 獲取一個(gè)連接的信息 |
lstat | 給出一個(gè)文件或符號(hào)連接的信息 |
mkdir | 新建目錄 |
move_uploaded_file | 將上傳的文件移動(dòng)到新位置 |
parse_ini_file | 解析一個(gè)配置文件 |
parse_ini_string | Parse a configuration string |
pathinfo | 返回文件路徑的信息 |
pclose | 關(guān)閉進(jìn)程文件指針 |
popen | 打開(kāi)進(jìn)程文件指針 |
readfile | 輸出一個(gè)文件 |
readlink | 返回符號(hào)連接指向的目標(biāo) |
realpath_cache_get | Get realpath cache entries |
realpath_cache_size | Get realpath cache size |
realpath | 返回規(guī)范化的絕對(duì)路徑名 |
rename | 重命名一個(gè)文件或目錄 |
rewind | 倒回文件指針的位置 |
rmdir | 刪除目錄 |
set_file_buffer | stream_set_write_buffer 的別名 |
stat | 給出文件的信息 |
symlink | 建立符號(hào)連接 |
tempnam | 建立一個(gè)具有唯一文件名的文件 |
tmpfile | 建立一個(gè)臨時(shí)文件 |
touch | 設(shè)定文件的訪問(wèn)和修改時(shí)間 |
umask | 改變當(dāng)前的 umask |
unlink | 刪除文件 |
GD/Image函數(shù) | |
gd_info | 取得當(dāng)前安裝的 GD 庫(kù)的信息 |
getimagesize | 取得圖像大小 |
getimagesizefromstring | Get the size of an image from a string |
image_type_to_extension | 取得圖像類(lèi)型的文件后綴 |
image_type_to_mime_type | 取得 getimagesize,exif_read_data,exif_thumbnail,exif_imagetype 所返回的圖像類(lèi)型的 MIME 類(lèi)型 |
image2wbmp | 以 WBMP 格式將圖像輸出到瀏覽器或文件 |
imagealphablending | 設(shè)定圖像的混色模式 |
imageantialias | 是否使用抗鋸齒(antialias)功能 |
imagearc | 畫(huà)橢圓弧 |
imagechar | 水平地畫(huà)一個(gè)字符 |
imagecharup | 垂直地畫(huà)一個(gè)字符 |
imagecolorallocate | 為一幅圖像分配顏色 |
imagecolorallocatealpha | 為一幅圖像分配顏色 + alpha |
imagecolorat | 取得某像素的顏色索引值 |
imagecolorclosest | 取得與指定的顏色最接近的顏色的索引值 |
imagecolorclosestalpha | 取得與指定的顏色加透明度最接近的顏色 |
imagecolorclosesthwb | 取得與給定顏色最接近的色度的黑白色的索引 |
imagecolordeallocate | 取消圖像顏色的分配 |
imagecolorexact | 取得指定顏色的索引值 |
imagecolorexactalpha | 取得指定的顏色加透明度的索引值 |
imagecolormatch | 使一個(gè)圖像中調(diào)色板版本的顏色與真彩色版本更能匹配 |
imagecolorresolve | 取得指定顏色的索引值或有可能得到的最接近的替代值 |
imagecolorresolvealpha | 取得指定顏色 + alpha 的索引值或有可能得到的最接近的替代值 |
imagecolorset | 給指定調(diào)色板索引設(shè)定顏色 |
imagecolorsforindex | 取得某索引的顏色 |
imagecolorstotal | 取得一幅圖像的調(diào)色板中顏色的數(shù)目 |
imagecolortransparent | 將某個(gè)顏色定義為透明色 |
imageconvolution | 用系數(shù) div 和 offset 申請(qǐng)一個(gè) 3x3 的卷積矩陣 |
imagecopy | 拷貝圖像的一部分 |
imagecopymerge | 拷貝并合并圖像的一部分 |
imagecopymergegray | 用灰度拷貝并合并圖像的一部分 |
imagecopyresampled | 重采樣拷貝部分圖像并調(diào)整大小 |
imagecopyresized | 拷貝部分圖像并調(diào)整大小 |
imagecreate | 新建一個(gè)基于調(diào)色板的圖像 |
imagecreatefromgd2 | 從 GD2 文件或 URL 新建一圖像 |
imagecreatefromgd2part | 從給定的 GD2 文件或 URL 中的部分新建一圖像 |
imagecreatefromgd | 從 GD 文件或 URL 新建一圖像 |
imagecreatefromgif | 由文件或URL創(chuàng)建一個(gè)新圖象 |
imagecreatefromjpeg | 由文件或URL創(chuàng)建一個(gè)新圖象 |
imagecreatefrompng | 由文件或URL創(chuàng)建一個(gè)新圖象 |
imagecreatefromstring | 從字符串中的圖像流新建一圖像 |
imagecreatefromwbmp | 由文件或URL創(chuàng)建一個(gè)新圖象 |
imagecreatefromxbm | 由文件或URL創(chuàng)建一個(gè)新圖象 |
imagecreatefromxpm | 由文件或URL創(chuàng)建一個(gè)新圖象 |
imagecreatetruecolor | 新建一個(gè)真彩色圖像 |
imagedashedline | 畫(huà)一虛線 |
imagedestroy | 銷(xiāo)毀一圖像 |
imageellipse | 畫(huà)一個(gè)橢圓 |
imagefill | 區(qū)域填充 |
imagefilledarc | 畫(huà)一橢圓弧且填充 |
imagefilledellipse | 畫(huà)一橢圓并填充 |
imagefilledpolygon | 畫(huà)一多邊形并填充 |
imagefilledrectangle | 畫(huà)一矩形并填充 |
imagefilltoborder | 區(qū)域填充到指定顏色的邊界為止 |
imagefilter | 對(duì)圖像使用過(guò)濾器 |
imagefontheight | 取得字體高度 |
imagefontwidth | 取得字體寬度 |
imageftbbox | 給出一個(gè)使用 FreeType 2 字體的文本框 |
imagefttext | 使用 FreeType 2 字體將文本寫(xiě)入圖像 |
imagegammacorrect | 對(duì) GD 圖像應(yīng)用 gamma 修正 |
imagegd2 | 將 GD2 圖像輸出到瀏覽器或文件 |
imagegd | 將 GD 圖像輸出到瀏覽器或文件 |
imagegif | 輸出圖象到瀏覽器或文件 |
imagegrabscreen | Captures the whole screen |
imagegrabwindow | Captures a window |
imageinterlace | 激活或禁止隔行掃描 |
imageistruecolor | 檢查圖像是否為真彩色圖像 |
imagejpeg | 輸出圖象到瀏覽器或文件 |
imagelayereffect | 設(shè)定 alpha 混色標(biāo)志以使用綁定的 libgd 分層效果 |
imageline | 畫(huà)一條線段 |
imageloadfont | 載入一新字體 |
imagepalettecopy | 將調(diào)色板從一幅圖像拷貝到另一幅 |
imagepng | 以 PNG 格式將圖像輸出到瀏覽器或文件 |
imagepolygon | 畫(huà)一個(gè)多邊形 |
imagepsbbox | 給出一個(gè)使用 PostScript Type1 字體的文本方框 |
imagepsencodefont | 改變字體中的字符編碼矢量 |
imagepsextendfont | 擴(kuò)充或精簡(jiǎn)字體 |
imagepsfreefont | 釋放一個(gè) PostScript Type 1 字體所占用的內(nèi)存 |
imagepsloadfont | 從文件中加載一個(gè) PostScript Type 1 字體 |
imagepsslantfont | 傾斜某字體 |
imagepstext | 用 PostScript Type1 字體把文本字符串畫(huà)在圖像上 |
imagerectangle | 畫(huà)一個(gè)矩形 |
imagerotate | 用給定角度旋轉(zhuǎn)圖像 |
imagesavealpha | 設(shè)置標(biāo)記以在保存 PNG 圖像時(shí)保存完整的 alpha 通道信息(與單一透明色相反) |
imagesetbrush | 設(shè)定畫(huà)線用的畫(huà)筆圖像 |
imagesetpixel | 畫(huà)一個(gè)單一像素 |
imagesetstyle | 設(shè)定畫(huà)線的風(fēng)格 |
imagesetthickness | 設(shè)定畫(huà)線的寬度 |
imagesettile | 設(shè)定用于填充的貼圖 |
imagestring | 水平地畫(huà)一行字符串 |
imagestringup | 垂直地畫(huà)一行字符串 |
imagesx | 取得圖像寬度 |
imagesy | 取得圖像高度 |
imagetruecolortopalette | 將真彩色圖像轉(zhuǎn)換為調(diào)色板圖像 |
imagettfbbox | 取得使用 TrueType 字體的文本的范圍 |
imagettftext | 用 TrueType 字體向圖像寫(xiě)入文本 |
imagetypes | 返回當(dāng)前 PHP 版本所支持的圖像類(lèi)型 |
imagewbmp | 以 WBMP 格式將圖像輸出到瀏覽器或文件 |
imagexbm | 將 XBM 圖像輸出到瀏覽器或文件 |
iptcembed | 將二進(jìn)制 IPTC 數(shù)據(jù)嵌入到一幅 JPEG 圖像中 |
iptcparse | 將二進(jìn)制 IPTC http://www.jsons.cn/ 塊解析為單個(gè)標(biāo)記 |
jpeg2wbmp | 將 JPEG 圖像文件轉(zhuǎn)換為 WBMP 圖像文件 |
png2wbmp | 將 PNG 圖像文件轉(zhuǎn)換為 WBMP 圖像文件 |
session函數(shù) | |
session_cache_expire | 返回當(dāng)前緩存到期 |
session_cache_limiter | get和set the current緩存限制/金 |
session_commit | session_write_close 的別名 |
session_decode | 將會(huì)話數(shù)據(jù)從一個(gè)會(huì)話編碼的字符串 |
session_destroy | 銷(xiāo)毀已注冊(cè)到會(huì)話的所有數(shù)據(jù) |
session_encode | 將當(dāng)前會(huì)話數(shù)據(jù)編碼為一個(gè)字符串 |
session_get_cookie_params | 獲得會(huì)話餅干參數(shù) |
session_id | 獲得和/或設(shè)置當(dāng)前會(huì)話標(biāo)識(shí) |
session_is_registered | 檢查變量是否在會(huì)話中已經(jīng)注冊(cè) |
session_module_name | 獲得和/或設(shè)置當(dāng)前會(huì)話模塊 |
session_name | 獲得和/或設(shè)置當(dāng)前會(huì)話名稱 |
session_regenerate_id | 更新新生成的會(huì)話標(biāo)識(shí) |
session_register_shutdown | 會(huì)話關(guān)機(jī)功能 |
session_register | 注冊(cè)一個(gè)或多個(gè)全局變量與當(dāng)前會(huì)話 |
session_save_path | 獲取和/或設(shè)置當(dāng)前會(huì)話保存路徑 |
session_set_cookie_params | 設(shè)置會(huì)話餅干參數(shù) |
session_set_save_handler | 設(shè)置用戶級(jí)會(huì)話存儲(chǔ)功能 |
session_start | 開(kāi)始新的或恢復(fù)現(xiàn)有的會(huì)話 |
session_status | 返回當(dāng)前會(huì)話狀態(tài) |
session_unregister | 注銷(xiāo)當(dāng)前會(huì)話的一個(gè)全局變量 |
session_unset | 自由所有會(huì)話變量 |
session_write_close | 寫(xiě)會(huì)話數(shù)據(jù)和結(jié)束會(huì)話 |
cookie函數(shù) | |
setcookie() | 設(shè)置cookie |
setrawcookie | 發(fā)送沒(méi)有URL編碼的cookie |
Date/Time 函數(shù) | |
checkdate | 驗(yàn)證一個(gè)格里高里日期 |
date_add | 別名 DateTime::add |
date_create_from_format | 別名 DateTime::createFromFormat |
date_create | 別名 DateTime::__construct |
date_date_set | 別名 DateTime::setDate |
date_default_timezone_get | 取得一個(gè)腳本中所有日期時(shí)間函數(shù)所使用的默認(rèn)時(shí)區(qū) |
date_default_timezone_set | 設(shè)定用于一個(gè)腳本中所有日期時(shí)間函數(shù)的默認(rèn)時(shí)區(qū) |
date_diff | 別名 DateTime::diff |
date_format | 別名 DateTime::format |
date_get_last_errors | 別名 DateTime::getLastErrors |
date_interval_create_from_date_string | 別名 DateInterval::createFromDateString |
date_interval_format | 別名 DateInterval::format |
date_isodate_set | 別名 DateTime::setISODate |
date_modify | 別名 DateTime::modify |
date_offset_get | 別名 DateTime::getOffset |
date_parse_from_format | Get info about given date formatted according to the specified format |
date_parse | Returns associative array with detailed info about given date |
date_sub | 別名 DateTime::sub |
date_sun_info | Returns an array with information about sunset/sunrise and twilight begin/end |
date_sunrise | 返回給定的日期與地點(diǎn)的日出時(shí)間 |
date_sunset | 返回給定的日期與地點(diǎn)的日落時(shí)間 |
date_time_set | 別名 DateTime::setTime |
date_timestamp_get | 別名 DateTime::getTimestamp |
date_timestamp_set | 別名 DateTime::setTimestamp |
date_timezone_get | 別名 DateTime::getTimezone |
date_timezone_set | 別名 DateTime::setTimezone |
date | 格式化一個(gè)本地時(shí)間/日期 |
getdate | 取得日期/時(shí)間信息 |
gettimeofday | 取得當(dāng)前時(shí)間 |
gmdate | 格式化一個(gè) GMT/UTC 日期/時(shí)間 |
gmmktime | 取得 GMT 日期的 UNIX 時(shí)間戳 |
gmstrftime | 根據(jù)區(qū)域設(shè)置格式化 GMT/UTC 時(shí)間/日期 |
idate | 將本地時(shí)間日期格式化為整數(shù) |
localtime | 取得本地時(shí)間 |
microtime | 返回當(dāng)前 Unix 時(shí)間戳和微秒數(shù) |
mktime | 取得一個(gè)日期的 Unix 時(shí)間戳 |
strftime | 根據(jù)區(qū)域設(shè)置格式化本地時(shí)間/日期 |
strptime | 解析由 strftime 生成的日期/時(shí)間 |
strtotime | 將任何英文文本的日期時(shí)間描述解析為 Unix 時(shí)間戳 |
time | 返回當(dāng)前的 Unix 時(shí)間戳 |
timezone_abbreviations_list | 別名 DateTimeZone::listAbbreviations |
timezone_identifiers_list | 別名 DateTimeZone::listIdentifiers |
timezone_location_get | 別名 DateTimeZone::getLocation |
timezone_name_from_abbr | Returns the timezone name from abbreviation |
timezone_name_get | 別名 DateTimeZone::getName |
timezone_offset_get | 別名 DateTimeZone::getOffset |
timezone_open | 別名 DateTimeZone::__construct |
timezone_transitions_get | 別名 DateTimeZone::getTransitions |
timezone_version_get | Gets the version of the timezonedb |
篇文章簡(jiǎn)要講解如何使用PHP輸出顯示CSV和EXCEL文件的簡(jiǎn)單方法,并以此作為深入了解應(yīng)用PHP語(yǔ)言生成和分析復(fù)雜CSV/EXCEL文件的拋磚引玉。
(1)生成CSV文件:以空格和換行識(shí)別,以半角逗號(hào)(即,)作分隔符,列為空也要表達(dá)其存在。常用:,和\n跳至下一單元格和換行,演示代碼如下:
<?php header("Content-type:application/vnd.ms-excel"); header("Content-Disposition:filename=space.csv"); echo "A,B"; ?>
結(jié)果截圖如下:
(2)生成EXCEL文件:與上述不同,常用:\t和\n跳至下一單元格和換行,演示代碼如下:
<?php header("Content-type:application/vnd.ms-excel"); header("Content-Disposition:filename=space.xls"); echo "A\t B\t"; ?>
其結(jié)果與上圖相同,并且,其支持簡(jiǎn)單的HTML代碼和表格規(guī)范(如常用的table規(guī)范,表格合并規(guī)范等),支持EXCEL運(yùn)算語(yǔ)法,演示代碼如下:
<?php header("Content-type:application/vnd.ms-excel"); header("Content-Disposition:filename=space.xls"); ?> <table width="100"> <tr> <td colspan="3" align="center"><span style="color:red;">工資表</span></td> </tr> <tr> <td>編號(hào)</td><td>姓名</td><td>月薪(元)</td> </tr> <tr> <td>001</td><td>張三</td><td>8000</td> </tr> <tr> <td>002</td><td>李四</td><td>9000</td> </tr> <tr> <td colspan="2" align="center">小計(jì)</td><td>=SUM(C3:C4)</td> </tr> </table>
結(jié)果如下圖所示:
*請(qǐng)認(rèn)真填寫(xiě)需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。