Dir
函數描述:obj dir(string directory);
返回值:函數返回一個目錄對象,該對象有兩個屬性:句柄和路徑。句柄可被其他目錄函數使用,路徑是用來生成目錄對象的字符串。如果出錯,則返回false(0)。
Fclose
函數描述:int fclose(int file_handle);
說明:此函數關閉一個已打開的文件。參數file_handle為一個文件被打開時產生的句柄。
返回值:如果關閉成功,返回true(1);否則,返回false(0)。
Feof
函數描述:int feof(int file_handle);
說明:在讀取文件時,PHP始終保持一個指向該文件末尾的指針。函數feof用以確定讀取指針是否已到達文件末尾。
返回值:若文件讀取指針達到文件末尾,函數feof返回ture(1);否則返回false(0)。
Fgetc
函數描述:string fgetc(int file_handle);
說明:參數file_handle是一個文件被打開時產生的句柄。
返回值:函數fgetc從一個已經對打開的文件中讀取一個單個字符。如出錯,則返回false(0)。
Fgets
函數描述:string fgets(int file_handle, int length);
返回值:返回從文件中讀取的字符串,文件由文件句柄file_handle指定,讀取長度將根據length-1盡可能的讀取字符,支行結束或文章末尾。若出錯,則返回false(0)。
Fgetss
函數描述:string fgetss(int file_handle,int length);
返回值:與fgets相類似,只是在返回字符串時,試著剝去HTML或PHP代碼。
File
函數描述:array file(string filename);
返回值:函數返回一個數組,數組的元素一次是文件的每一行,數組下標從開始。若出錯,則返回false(0).
File_exists
函數描述:int file_exists(string filename);
說明:此函數用來確定文件是否存在。
返回值:若存在,返回true(1);否則返回false(0)。
Fileatime
函數描述:int fileatime(string filename);
返回值:以標準時間戳的格式,即從1971年1月1日起以秒計,返回最近改變文件的時間。在Windows下返回文件的生成時間。
Filectime
函數描述:int filectime(string filename);
返回值:在UNIX下,函數filectime返回以標準時間戳的格式,即從1971年1月1日起以秒計,返回最近改變文件的時間。在Windows下返回文件的生成時間。
Filegroup
函數描述:int filegroup(string filename);
返回值:在UNIX下,返回所給文件的組標志符,若出錯則返回false(0)。在windows下總返回false(0)。
Fileinode
函數描述:int fileinode(string filename);
返回值:在UNIX下,返回所給文件的inode,若出錯則返回false(0)。在windows下總返回false(0)。
Filemtime
函數描述:int filemtime(string filename);
返回值:函數filemtime返回以標準時間戳的格式,即從1971年1月1日起以秒計,返回最近改變文件的時間。該函數在UNIX和Windows下運行的結果一樣。
Fileowner
函數描述:int fileowner(string filename);
返回值:在UNIX下,函數返回文件所有者的用戶標識符,若出錯則返回false(0)。在windows下總返回false(0)。
Fileperms
函數描述:int fileperms(string filename);
返回值:返回文件的許可權,若出錯則返回false(0)。
Filesize
函數描述:int filesize(string filename);
返回值:返回所給文件打消的字節數。
Filetype
函數描述:int filetype(string filename);
返回值:函數filetype返回所給文件的類型作為描述的字符串,可能值為block,char,dir,fifo,file,link和unknown。
Fopen
函數描述:int fopen(string filename,string mode);
說明:函數fopen根據參數filename和mode打開一個文件以便讀寫。若參數filename以“http://”或“ftp://”開始,則文件通過Internet用http或ftp協議打開;否則文件在本地系統內打開。
若模式帶有“+”號,則為更新模式,它允許同時讀和寫;若字母“b”出現在模式的最后部分,則該文件被認為是二進制文件。(文件打開模式參見下表)
文件打開模式表
模 式 說 明
r 以只讀模式打開一個文件,并將文件內部指針指向文件開頭
r+ 以可讀可寫模式打開一個文件,并將文件內部指針指向文件開頭
w 以只寫模式打開一個文件,并將原文件內容清空,并將文件內部指針指向文件開頭;若指定文件不存在,則創建一個名為filename的新文件。
w+ 以可讀可寫模式打開一個文件,并將原文件內容清空,并將文件內部指針指向文件開頭;若指定文件不存在,則創建一個名為filename的新文件。
a 以只寫模式打開一個文件,并將文件內部指針指向文件末尾;若指定文件不存在,則創建一個名為filename的新文件。
a+ 以可讀可寫模式打開一個文件,并將文件內部指針指向文件末尾;若指定文件不存在,則創建一個名為filename的新文件。
Fpassthru
函數描述:int fpassthru(int file_handle);
返回值:函數fpassthru向瀏覽器輸出文件,完成后將文件關閉。若出錯則返回發false(0)。
Fputs
函數描述:int fputs(int file_handle,string output);
說明:函數fputs將數據寫入一個打開的文件。
返回值:如果寫入成功,返回true(1);否則返回false(0)。
Fread
函數描述:string fread(int file_handle,string length);
返回值:函數fread返回從指定文件中讀取的字符串,當字符串長度等于參數length或文件結束時,讀取結束。若讀取失敗,則返回false(0)。
Fseek
函數描述:int fseek(int file_handle,int offset);
說明:函數fseek修改PHP中一個已打開文件的內部指針,其偏移量即距離文件頭的字節數等于參數offset。
返回值:若修改成功,函數fseek返回0;否則返回-1。這需要讀者注意。
Ftell
函數描述:int ftell(int file_handle);
返回值:函數ftell返回PHP文件內部指針的偏移量。
Fwrite
函數描述:int fwrite(int file_handle, string string, int [length]);
說明:函數fwrite將字符串string寫入由文件句柄file_handle指定的文件。若可選參數length給出,則當字符串string結束或寫入長度達length時寫入結束。
返回值:若寫入成功,返回true(1);否則返回false(0)。
提示:以字符“gz”開始的庫函數,用于對壓縮文件的操作。
Gzclose
函數描述:int gzclose(int file_handle);
說明:關閉由gzopen打開的文件。
返回值:若關閉成功返回true(1);否則返回false(0)。
(Gzof、Gzfile、Gzgetc、Gzgets、Gzgetss、Gzopen、Gzpassthru、Gzputs、Gzrewind、Gzseek、Gztell)與前面的文件操作函數類似。
Is_dir
函數描述:int is_dir(string filename);
返回值:若給出的參數filename是一個目錄,則函數is_dir返回true(1);否則返回false(0)。
Is_executable
函數描述:int is_executable(string filename);
返回值:如果文件存在且可執行,返回true(1);否則返回false(0)。
Is_file
函數描述:int is_file(string filename);
返回值:如果參數filename]所指的文件存在且是一個正常的文件,則函數is_file返回true(1);否則返回false(0)。
Is_link
函數描述:int is_link(string dilename);
返回值:如果參數filename是符號連接,則函數is_link返回true(1);否則返回false(0)。
Is_readable
函數描述:int is_readable(string filename);
返回值:如果文件存在且可讀,則函數is_readable返回true(1);否則返回false(0)。在UNIX中,取決于文件的許可權,在Windows中函數的返回值總為true。
Is_writeable
函數描述:int is_writeable(string filename);
返回值:如果文件存在且可寫,則函數is_writeable返回true(1);否則返回false(0)。
Link
函數描述:int link(string source,string destination);
說明:函數link生成一個硬鏈接。在Windows中,該函數不起任何作用,也不返回任何值。
Mkdir
函數描述:int mkdir(string directory,int mode);
說明:函數mkdir用所給的名字創建一個新的目錄,許可權根據模式參數進行設置。
返回值:目錄創建成功,返回true(1);否則返回false(0)。
Opendir
函數描述:int opendir(string directory);
返回值:函數opendir根據所給目錄名directory返回一個目錄句柄。
Pclose
函數描述:int pclose(int file_handle);
說明:關閉由popen函數打開的文件流。
Popen
函數描述:int popen(string command,string mode);
說明:函數popen打開一個通向正在執行的命令的管道,該管道可讀可寫。
返回值:函數popen返回一個文件句柄。
Readdir
函數描述:string readdir(int directory_handle);
返回值:函數readdir返回由目錄句柄directory_handle指定目錄中的下一個文件的文件名。
Readfile
函數描述:int readfile(string filename);
說明:用函數readfile讀取所給的文件并直接發送給瀏覽器。若參數filename是以http://或ftp://開頭的,則相應地用http或ftp協議讀取文件。
Readgzfile
與readfile類似,只是他作用于壓縮文件。
Readlink
函數描述:string readlink(string filename);
返回值:函數readlink返回一個符號鏈接所指的路徑;若出錯,則返回false(0)。
Rename
函數描述:int rename(string old_name,string new_name);
說明:函數rename將參數old_name指定的文件名改變為由參數new_name指定的文件名。
返回值:若改變成功,返回true(1);否則返回false(0)。
Rewind
函數描述:int rewind(int file_handle);
說明:函數rewind將PHP的內部文件指針移到文件頭。
Rewinddir
函數描述:int rewinddir(int directory_handle);
說明:函數rewinddir將PHP的內部指針重置到一目錄列表的開頭。
返回值:若重置成功,則函數rewinddir返回true(1);否則返回false(0)。
Rmdir
函數描述:int rmdir(string directory);
說明:利用函數rmdir可以刪除一個目錄。
返回值:若刪除成功,則函數rmdir返回true(1);否則返回false(0)。
Stat
函數描述:array stat(string filename);
說明:函數stat執行C語言中的stat函數并返回一個由13個元素的數組。元素如表所示:
返回值:函數stat返回生成的數組。
函數stat的返回數組元素表
元 素 下 標 元 素 內 容
0 文件所在設備或驅動器字母
1 索引節點
2 文件模式
3 鏈接數
4 用戶
5 文件所在組
6 設備類型或驅動器字母
7 文件大小
8 文件的最后訪問時間
9 文件的最后修改時間
10 文件的最后改變或生成時間
11 塊大小
12 塊數目
Symlink
函數描述:int symlink(string source,string destination);
說明:函數symlink用目的參數中的名字創建一個符號鏈接到源參數。
返回值:若創建成功,返回true(1);否則返回false(0)。
Touch
函數描述:int touch(string filename,string [time]);
說明:函數將文件的最近修改時間設置為給出的時間time,time為從1970年1月1日起的秒數。若time默認,則使用當前時間。
Umask
函數描述:int umask(int [umask]);
說明:函數返回文件創建時賦予的默認的許可權。
返回值:若給出了可選參數umask,則函數返回參數umask與0777的邏輯與。在Windows下,該函數不起任何作用,且返回false(0)。
Unlink
函數描述:int unlink(string filename);
說明:函數unlink永久刪除一個文件。
返回值:若刪除成功,則函數unlink返回true(1);否則返回false(0)。
其他函數
Include
函數描述:include (string filename);
說明:函數include使PHP編譯器打開并執行所給的文件。該文件被看作普通的PHP腳本。也可以通過URL以http://或ftp://開頭來指明文件。
返回值:無。
Require
函數描述:require (string filename);
說明:函數require使PHP編譯器打開并執行所給的文件。該文件被看作普通的PHP腳本。也可以通過URL以http://或ftp://開頭來指明文件。
返回值:無。
從表面上看,函數include和require的作用是相同的,我們可以用它們將一些包含已編寫代碼的文件引入到PHP程序中。在這些文件中,主要存儲需要重復使用的常量、變量聲明和一些函數的聲明和定義。函數include和require的使用,可以使復雜的PHP程序變得簡潔明了。
但在實際執行過程中,這兩個函數有著很大的差別。函數require通常放在PHP程序的最前面,PHP程序開始執行,就會先讀入require所指定的文件,將它變成PHP程序的一部分。常用的自定義函數可以通過這種方法引入PHP程序。而函數include通常放在PHP程序的循環結構中,每次程序運行include語句,就將include所指定的文件引入PHP程序執行一遍。
Header
函數描述:int header(string http_header);
說明:函數hader發送一個http頭標給瀏覽器,需要注意的是,函數必須將任何輸出發送給瀏覽器之前調用。
返回值:如果發送成功,函數header返回true(1);否則返回false(0)。
Getenv
函數描述:string getenv(string variable);
返回值:函數getenv返回所給出的環境變量值;若出錯,則返回false(0)。
Putenv
函數描述:putenv(string variable);
說明:函數putenv設置一個環境變量的值。
Getallheaders
函數描述:array getallheader();
返回值:函數getallheader返回在服務器和瀏覽器之間交換的所有頭,其中有些將被轉換為環境變量。
Setcookie
函數描述:int setcookie(string name,string value,int expire ,string path,string domain,int secure);
返回值:如果設置成功,返回true(1);否則返回false(0)。
Gethostbyaddr
函數描述:string gethostbyaddr(string ip_address);
返回值:函數gethostbyaddr返回由IP地址指定的主機名。
Gethostbyname
函數描述:string gethostbyname(string hostname);
返回值:函數gethostbyname返回由主機名hostname指定的主機的IP地址。
Gethostbynamel
函數描述:array Gethostbynamel(string hostname);
返回值:函數Gethostbynamel返回由主機名hostname指定的主機的IP地址列表。
PHP中的環境變量
變 量 名 描 述
AUTH_TYPE 該變量提供用來訪問腳本使用的認證協議(需本地服務器支持)
GETEWAY_INTERFACE 本地服務器支持的CGI版本
HTTP_USER_AGENT 用戶瀏覽器的類型和版本
HTTP_FROM 用戶的E-mail地址(在給HTML表單提供了默認值的情況下才能使用)
PATH_INFO 調用腳本的HTML請求的路徑信息
REMOTE_ADDR 用戶的IP地址
REMOTE_HOST 用戶所使用的計算機的域名
SCRIPT_NAME 腳本的路徑名
SERVER_NAME 服務器的主機名
SERVER_PORT 本地web服務器監聽的端口號
SERVER_PROTOCOL 服務器使用的網絡協議的版本
SERVER_SOFTWARE Web服務器的名稱和版本
PHP數據庫函數(基于MySQL)
PHP關于MySQL數據庫的函數有幾十個,這里只介紹常用的一些,目的是能夠快速上手。如果實踐中需要更多的庫函數,可以翻閱PHP函數手冊。
Mysql_connect
函數描述:int mysql_connect(string [hostname] ,string [username] , string [password]);
說明:mysql_connect是最常用一個函數,它用來建立和指定主機上的Mysql數據庫的連接。三個參數均是可選選取項,默認值分別是:localhost、服務器進程的所有者及空串。其中,hostname可包含端口號,可寫為:hostname:port。
在該PHP腳本運行結束時,連接被自動關閉,當然也可經用mysql_close來提前結束該連接。如果想建成立永久性連接,可使用函數mysql_pconnect。除了這一點外,這個函數是和mysql_connect完全相同。
返回值:連接成功后會返回一個MySQL連接標識符,失敗時返回 false。
mysql_select_db
函數描述: int mysql_select_db(string database_name , int [link_identifier]);
說明:mysql_select_db用來根據連接標識符在該數據庫服務器上選取數據庫作為當前的數據庫。如果不特別聲明連接標識符,則默認為是上一次打開的連接。該函數使用前必須調用Mysql_connect函數。
返回值:選取成功后返回true,失敗時返回false。
Mysql_query
函數描述:int mysql_query(string query ,int [link_identifier]);
說明:mysql_query用來根據連接標識符向該數據庫服務器的當前數據庫發送查詢,如果連接標識符默認,則默認為是上一次打開的連接。Query為標準SQL語句。
返回值:成功后返回一個結果標識符,失敗時返回false。
Mysql_fetch_row
函數描述:int mysql_fetch_row(int result);
說明:mysql_fetch_row用來查詢結果的一行保存至數組,該數組下標從0開始,每一個數組元素對應一個域。通過循環,可以將查詢結果全部獲得。
返回值:返回下行的所有域值,并將其保存至一個數組中,沒有行時返回false。
Mysql_fetch_array
函數描述:array int result);
說明:mysql_fetch_array和mysql_fetch_row功能基本相同,只不過它除了可以用從0開始的偏移量作索引,還可以用域名作索引。
返回值返回下一行的所有域值,并將其保存至一個數組中,沒有行時返回false。
Mysql_num_rows
函數描述:int (string result);
說明:mysql_num_rows用于計算查詢結果中所得行的數目。
返回值:返回查詢結果中所得行的數目。
Mysql_result
函數描述:int mysql_result(int result , int row , mixed field);
說明:mysql_resultet 用于獲取結果集中指定域的數據。Field可以是一個偏移量,也可以是列名,如果列有別名,還可以用這外別名。
返回值:返回結果集中指定行、指定偏聽偏信移量的數據。
Mysql_close
函數描述:int mysql_close(int [link_identifier]);
說明:mysql_close用于關閉當前與數據庫服務器的連接。
返回值:成功后返回true,失敗時返回false。
Session函數
Session_start
函數描述:boolean session_start(void);
功能說明:session_start函數的功能是初始化一個新的session,如果已經存在一個為該用戶服務的session,則連接原有的session。
參數說明:無。
返回值:邏輯類型變量,且值永遠為真。
Session_destroy
函數描述:boolean session_destroy(void);
功能說明session_destroy結束原有的session 。
參數說明:無。
返回值:邏輯類型變量,且值永遠為真。
Session¬_register
函數描述:boolean session_register(string name);
功能說明:在session中增加一個變量。
參數說明:“string name”變量名。
返回值:邏輯類型變量。操作成功返回真值。
Session_unregister
函數說明:boolean session_unregister(string name);
功能說明:在session中刪除一個變量。
參數說明:“string name”變量名。
返回值:邏輯類型變量。操作成功返回真值。
Session_is_registered
函數描述:boolean session_is_registered(string name);
功能說明:檢查session中是否存在所指定的變量。
參數說明:“string name”變量名。
返回值:邏輯類型變量。
Session_encode
函數描述:boolean session_encode(void);
功能說明:session_encode函數對當前的session資料編碼,PHP4采用哈希編碼。
參數說明:無。
返回值:邏輯類型變量。編碼成功則返回真值。
Session_decode
函數描述:boolean session_decode(string data);
功能說明:session_decode可以編過碼的資料解碼。
參數說明:“string data”需要解碼的資料。
返回值:邏輯類型變量。