[ 永遠的UNIX::UNIX技術資料的寶庫 ]   GB | BIG5

首頁 > 編程技術 > Php > 正文
PHP4手冊:函數庫及函數(二十九) 雜項函式庫
http://netleader.126.com 星空浪子 (2001-04-18 14:57:48)

--------------------------------------------------------------------------------
 雜項函式庫 
--------------------------------------------------------------------------------
 


本函式庫共有 19 個函式
所有很難在 PHP 函式中歸類的函式都屬本函式庫。  


connection_aborted: 若連結中斷則傳回 true。 
connection_status: 取得連線狀態。 
connection_timeout: 若超過 PHP 程式執行時間則傳回 true。 
eval: 將值代入字串之中。 
extract: 匯入陣列到符號表。 
die: 輸出訊息並中斷 PHP 程式。 
exit: 結束 PHP 程式。 
function_exists: 查核函式是否已定義。 
ignore_user_abort: 連線中斷程式是否執行。 
iptcparse: 使用 IPTC 模組解析位元資料。 
leak: 泄出記憶體。 
pack: 壓縮資料到位元字串之中。 
register_shutdown_function: 定義 PHP 程式執行完成執行的函式。 
serialize: 儲存資料到系統中。 
sleep: 暫停執行。 
unpack: 解壓縮位元字串資料。 
unserialize: 取出系統資料。 
uniqid: 產生唯一的值。 
usleep: 暫停執行。 


--------------------------------------------------------------------------------
 函式:connection_aborted() 
--------------------------------------------------------------------------------
 


雜項函式庫


connection_aborted
若連結中斷則傳回 true。

語法: int connection_aborted(void);

傳回值: 整數

函式種類: 網路系統


 
 
內容說明 


若與客戶端 (Client) 失去連結則傳回 true 值。本函式不須輸入參數。
 

--------------------------------------------------------------------------------
 函式:connection_status() 
--------------------------------------------------------------------------------
 


雜項函式庫


connection_status
取得連線狀態。

語法: int connection_status(void);

傳回值: 整數

函式種類: 網路系統


 
 
內容說明 


本函式可傳回連線狀態。使用時不須輸入參數。
 

--------------------------------------------------------------------------------
 函式:connection_timeout() 
--------------------------------------------------------------------------------
 


雜項函式庫


connection_timeout
若超過 PHP 程式執行時間則傳回 true。

語法: int connection_timeout(void);

傳回值: 整數

函式種類: PHP 系統功能


 
 
內容說明 


若 PHP 程式 (script) 執行時間超過設定值則傳回 true。使用時不須輸入參數。

 

--------------------------------------------------------------------------------
 函式:eval() 
--------------------------------------------------------------------------------
 


雜項函式庫


eval
將值代入字串之中。

語法: void eval(string code_str);

傳回值: 無

函式種類: 資料處理


 
 
內容說明 


本函式可將字串之中的變數值代入,通常用在處理資料庫的資料上。參數 code_str 為欲處理的字串。值得注意的是待處理的字串要符合 PHP 的字串格式,同時在結尾處要有分號。使用本函式處理的字串會沿續到 PHP 程式結束。


 
 
使用范例 


$string = '杯子';
$name = '咖啡';
$str = '這個 $string 中裝有 $name.
';
echo $str;
eval( "\$str = \"$str\";" );
echo $str;
?>

本例的傳回值為

這個 $string 中裝有 $name.
這個 杯子 中裝有 咖啡. 


--------------------------------------------------------------------------------
 函式:extract() 
--------------------------------------------------------------------------------
 


雜項函式庫


extract
匯入陣列到符號表。

語法: void extract(array var_array, int [extract_type], string [prefix]);

傳回值: 無

函式種類: 資料處理


 
 
內容說明 


本函式用來匯入陣列變數到目前使用的符號表之中。參數 var_array 為待匯入的陣列變數。參數 extract_type 為輸出的型態,內定值為 EXTR_OVERWRITE,見下表

EXTR_OVERWRITE 遇相同的變數名則取而代之。 
EXTR_SKIP 遇相同的變數名則略過不取代。 
EXTR_PREFIX_SAME 遇相同的變數名則取新變數名稱。 
EXTR_PREFIX_ALL 全部取新的變數名稱。 


參數 prefix 為參數 extract_type 值為 EXTR_PREFIX_SAME 或者 EXTR_PREFIX_ALL 時,用來加在變數名稱前的字串。


 
 
使用范例 


本例傳回值為 紅色, 大號, 弧型, 中號,其中的 size 變數不變。

$size = "大號";
$var_array = array("color" => "紅色",
                   "size"  => "中號",
                   "shape" => "弧型");
extract($var_array, EXTR_PREFIX_SAME, "new");
print "$color, $size, $shape, $new_size\n";
?> 


--------------------------------------------------------------------------------
 函式:die() 
--------------------------------------------------------------------------------
 


雜項函式庫


die
輸出訊息並中斷 PHP 程式。

語法: void die(string message);

傳回值: 無

函式種類: PHP 系統功能


 
 
內容說明 


本函式將送出字串到瀏覽器並中斷 PHP 程式 (Script)。參數 message 為欲送出的字串。


 
 
使用范例 


下例中,若無法開啟 /etc/shadow 時,傳給瀏覽器抱歉,無法開啟: /etc/shadow。

$filename = "/etc/shadow";
$file = @fopen($filename, 'r')
  or die("抱歉,無法?/font>}啟: $filename");
echo "本行不會執行";
?> 


--------------------------------------------------------------------------------
 函式:exit() 
--------------------------------------------------------------------------------
 


雜項函式庫


exit
結束 PHP 程式。

語法: void exit(void);

傳回值: 無

函式種類: PHP 系統功能


 
 
內容說明 


本函式直接結束 PHP 程式 (Script)。不需輸入參數,亦無傳回值。
 

--------------------------------------------------------------------------------
 函式:function_exists() 
--------------------------------------------------------------------------------
 


雜項函式庫


function_exists
查核函式是否已定義。

語法: int function_exists(string function_name);

傳回值: 整數

函式種類: PHP 系統功能


 
 
內容說明 


本函式用來檢查指定的函式是否已經定義。參數 function_name 為待檢查的函式名稱。若已定義指定的函式則傳回 true 值,其它情形均傳回 false 值。
 

--------------------------------------------------------------------------------
 函式:ignore_user_abort() 
--------------------------------------------------------------------------------
 


雜項函式庫


ignore_user_abort
連線中斷程式是否執行。

語法: int ignore_user_abort(int [setting]);

傳回值: 整數

函式種類: PHP 系統功能


 
 
內容說明 


本函式設定或取得使用端連線中斷,PHP 程式是否仍繼續執行。內定值為中斷連線就停止執行。在 PHP 設定檔中 (php3.ini/php.ini) 的 ignore_user_abort 選項就是設定處。本功能在 PHP 3.0.7 版之才開始提供。

 

--------------------------------------------------------------------------------
 函式:iptcparse() 
--------------------------------------------------------------------------------
 


雜項函式庫


iptcparse
使用 IPTC 模組解析位元資料。

語法: array iptcparse(string iptcblock);

傳回值: 陣列

函式種類: 圖形處理


 
 
內容說明 


本函式利用 IPTC 模組解析圖形的位元資料中的 APP13 資訊。IPTC 模組可到 http://www.xe.net/iptc 下載。若執行失敗或者沒有 APP13 的 IPTC 資料時傳回 false。


 
 
使用范例 


$size = GetImageSize("testimg.jpg",&$info);
if (isset($info["APP13"])) {
  $iptc = iptcparse($info["APP13"]);
  var_dump($iptc);
}
?> 

 

--------------------------------------------------------------------------------
 函式:leak() 
--------------------------------------------------------------------------------
 


雜項函式庫


leak
泄出記憶體。

語法: void leak(int bytes);

傳回值: 無

函式種類: PHP 系統功能


 
 
內容說明 


本函式用來系統除錯使用。通常在執行某一回應可自動清除泄出的記憶體。

 

--------------------------------------------------------------------------------
 函式:pack() 
--------------------------------------------------------------------------------
 


雜項函式庫


pack
壓縮資料到位元字串之中。

語法: string pack(string format, mixed [args]...);

傳回值: 字串

函式種類: 資料處理


 
 
內容說明 


本函式用來將資料壓縮打包到位元的字串之中。本函式和 Perl 的同名函式功能用法完全相同。參數 format 為壓縮的格式,見下表

a 將字串空白以 NULL 字元填滿 
A 將字串空白以 SPACE 字元 (空格) 填滿 
h 十六進位字串,低位元在前 
H 十六進位字串,高位元在前 
c 有號字元 
C 無號字元 
s 有號短整數 (十六位元,依計算機的位元順序) 
S 無號短整數 (十六位元,依計算機的位元順序) 
n 無號短整數 (十六位元, 高位元在的順序) 
v 無號短整數 (十六位元, 低位元在的順序) 
i 有號整數 (依計算機的順序及范圍) 
I 無號整數 (依計算機的順序及范圍) 
l 有號長整數 (卅二位元,依計算機的位元順序) 
L 無號長整數 (卅二位元,依計算機的位元順序) 
N 無號短整數 (卅二位元, 高位元在的順序) 
V 無號短整數 (卅二位元, 低位元在的順序) 
f 單精確浮點數 (依計算機的范圍) 
d 倍精確浮點數 (依計算機的范圍) 
x 空位元 
X 倒回一位元 
@ 填入 NULL 字元到絕對位置 



 
 
使用范例 


print(pack("cccc", 65, 66, 67, 68));
echo "
\n";
print(pack("h10", "778899aabb"));
echo "
\n";
print(pack("H10", "778899aabb"));
?> 



 
 
參考 


unpack()  


--------------------------------------------------------------------------------
 函式:register_shutdown_function() 
--------------------------------------------------------------------------------
 


雜項函式庫


register_shutdown_function
定義 PHP 程式執行完成執行的函式。

語法: int register_shutdown_function(string func);

傳回值: 整數

函式種類: PHP 系統功能


 
 
內容說明 


本函式向系統定義 PHP 程式 (Script) 執行結束之所要執行的函式。當執行該指定的函式時,由無法看到傳回值,因此除錯較困難。


--------------------------------------------------------------------------------
 函式:serialize() 
--------------------------------------------------------------------------------
 


雜項函式庫


serialize
儲存資料到系統中。

語法: string serialize(mixed value);

傳回值: 字串

函式種類: 資料處理


 
 
內容說明 


本函式可儲存資料到系統中。儲存的資料以 byte-stream 方式存放。變數 value 為混合型態,包括整數、倍精確浮點數字串、陣列以及物件的屬性 (物件的方法無法儲存)。


 
 
參考 


unserialize()  

 

--------------------------------------------------------------------------------
 函式:sleep() 
--------------------------------------------------------------------------------
 


雜項函式庫


sleep
暫停執行。

語法: void sleep(int seconds);

傳回值: 無

函式種類: PHP 系統功能


 
 
內容說明 


本函式可暫時使程式停止執行。參數 seconds 為要暫停的秒數。


 
 
參考 


usleep()  
 

--------------------------------------------------------------------------------
 函式:unpack() 
--------------------------------------------------------------------------------
 


雜項函式庫


unpack
解壓縮位元字串資料。

語法: string pack(string format, mixed [args]...);

傳回值: 陣列

函式種類: 資料處理


 
 
內容說明 


本函式用來將位元的字串的資料解壓縮。本函式和 Perl 的同名函式功能用法完全相同。參數 format 為壓縮的格式,參見 pack 的格式表。


 
 
參考 


pack()  
 

--------------------------------------------------------------------------------
 函式:unserialize() 
--------------------------------------------------------------------------------
 


雜項函式庫


unserialize
取出系統資料。

語法: mixed unserialize(string str);

傳回值: 混合型態資料

函式種類: 資料處理


 
 
內容說明 


本函式可取出系統資料。儲存的資料以 byte-stream 方式存放。傳回值為混合型態,包括整數、倍精確浮點數字串、陣列以及物件的屬性 (物件的方法無法儲存)。


 
 
使用范例 


$conn = odbc_connect("webdb", "php", "chicken");
$stmt = odbc_prepare($conn, "SELECT data FROM sessions WHERE id = ?");
$sqldata = array($PHP_AUTH_USER);
if (!odbc_execute($stmt, &$sqldata) || !odbc_fetch_into($stmt, &$tmp)) {
    // 若執行則 $session_data 設為空值
    $session_data = array();
} else {
    // 取出 $tmp[0] 值
    $session_data = unserialize($tmp[0]);
    if (!is_array($session_data)) {
        // 出現錯誤則將 $session_data 清除
        $session_data = array();
    }
}
?> 

 
 
參考 


serialize()  


--------------------------------------------------------------------------------
 函式:uniqid() 
--------------------------------------------------------------------------------
 


雜項函式庫


uniqid
產生唯一的值。

語法: string uniqid(string prefix);

傳回值: 字串

函式種類: 編碼處理


 
 
內容說明 


本函式會依據當時的毫秒以及指定的前置字串產生一個獨一無二的字串。參數 prefix 為前置的字串,最多可達 114 字元。


 
 
使用范例 


本例產生 32 個字元的獨一無二字串。

$token = md5(uniqid(rand()));
echo $token;
?> 

--------------------------------------------------------------------------------
 函式:usleep() 
--------------------------------------------------------------------------------
 


雜項函式庫


usleep
暫停執行。

語法: void usleep(int micro_seconds);

傳回值: 無

函式種類: PHP 系統功能


 
 
內容說明 


本函式可暫時使程式停止執行。參數 micro_seconds 為要暫停的毫秒數。


 
 
參考 


sleep()  (http://www.fanqiang.com)
    進入【UNIX論壇

相關文章
PHP4手冊:函數庫及函數(四十六) SNMP 網管函式庫 (2001-04-18 16:56:55)
PHP4手冊:函數庫及函數(四十五) Solid 資料庫連結函式庫 (2001-04-18 16:54:16)
PHP4手冊:函數庫及函數(四十四) 信號與共享記憶體函式庫 (2001-04-18 16:49:09)
PHP4手冊:函數庫及函數(四十三) 常規表示法函式庫 (2001-04-18 16:40:33)
PHP4手冊:函數庫及函數(四十二) URL 處理函式庫 (2001-04-18 16:37:13)
PHP4手冊:函數庫及函數(四十一) PostgreSQL 資料庫函式庫 (2001-04-18 15:58:12)
PHP4手冊:函數庫及函數(四十) PDF 格式檔案函式庫 - 2 (2001-04-18 15:53:53)
PHP4手冊:函數庫及函數(四十) PDF 格式檔案函式庫 - 1 (2001-04-18 15:53:35)
PHP4手冊:函數庫及函數(三十九) Perl 相容語法函式庫 (2001-04-18 15:45:08)
PHP4手冊:函數庫及函數(三十八) Oracle 資料庫函式庫 (2001-04-18 15:43:09)

===更多相關===
 

★  樊強制作 歡迎分享  ★