Archive

Posts Tagged ‘PHP’

可攜式 APM 網頁伺服器

六月 3rd, 2007

[PHP] 計算頁面執行時間

五月 21st, 2006

計算頁面執行時間的方法很簡單,只要抓兩個 time 來相減就好了。而 PEAR 中也有個專屬的程式庫叫「Benchmark」,功能很完整,還可以分段計時,不過為了計算個時間還要載入整個 PEAR::Benchmark,實在不太方便,所以將它做了簡化版本。

Timer Class for PHP5
Timer Class for PHP4

Example:


$timer = new Timer();
$timer->start(); // 設定開始標籤
for ($i = 0; $i < 10000; $i++);
$timer->stop(); // 設定結束標籤
$timer->display();

PHP, 程式筆記

[PHP] 使用 ImageMagick 製作縮圖

四月 15th, 2006

ImageMagick 是一套功能多且強大的圖片處理工具,可以用來製作縮圖、轉換影像格式等,和 GD 比較,ImageMagick 製作的縮圖顯的清晰準確,不過要使用它需要另外安裝,而且是在 command line 執行的,所以 PHP 就可以用 shell_exec() 或 exec() 來呼叫它囉!


// 呼叫 ImageMagic 的 convert
shell_exec("/usr/bin/convert -geometry 200x200 big_img.jpg small_img.jpg");

這段示範了 ImageMagick 的縮圖功能,依照原圖比例縮小(最大 200x200)。
有關其他更詳細的用法,可直接上 ImageMagick 網站查詢。

PHP, 程式筆記 , ,

PHP 取得鍵盤輸入

三月 9th, 2006

最近學校老師教利用 Perl 寫網路程式,是由命令列執行的,於是也想使用較熟悉的 PHP 看是否能完成相同的功能,第一個遇到的問題就是怎麼由鍵盤輸入字元囉!於是翻了許久的 PHP 官方手冊,終於找到方法了。


// 取得鍵盤輸入
function stdin($length = 255) {
    if (!isset($GLOBALS['StdinPointer']))
        $GLOBALS['StdinPointer'] = fopen('php://stdin', 'r');
    $intput = fgets($GLOBALS['StdinPointer'], $length);
    return trim($intput);
}

官方手冊:http://tw2.php.net/manual/en/function.fopen.php#14426

PHP, 程式筆記 ,

[PHP] 解決 substr 擷取中文字時出現問號

三月 4th, 2006

PHP 有個擷取字串的函式 substr(),但是遇到中文字可就沒辦法正確擷取了,因為一個中文字在 BIG5 編碼是 2 byte,在 UTF-8 要 3 byte,如果擷取的字串剛好不到一個中文,那就會出現「?」之類的符號。所以提供一個解決方法,就是使用 mb_substr(),使用時必須先正確載入 PHP 的 mbstring 模組。

Example:


<?php
$string = '這是中文字';
$string = mb_substr($string, 0, 4, 'BIG-5');
echo $string;
?>

這樣就會正確擷取到「這是中文」了。

PHP, 程式筆記 ,