Category: PHP

PHP 監測伺服器

在網上的伺服器監測程式有很多, 功能都十分完善, 但如果你像我一樣只要監測伺服器是否 down 機, 而且全都是 httpd 伺服器, 可以透過 PHP 簡單實現, 例如這樣就可以很簡單地看到伺服器是否可以連接:當然上面的程式很陽春, 只會印出伺服器是否可以連接, 而且只可以人手打開上面 PHP 網頁才可以監測。其實只要透過 crontab 自動執行 PHP, 就可以讓 PHP 自動監測伺服器, 並在發生問題時以電郵通知管理員。另外也可以在要監測的伺服器上放一個細小的 PHP 程式, 會印出系統的 load average, 當發覺 load …

PHP 讀取 CSV 檔案

在 PHP 要讀取 CSV 檔案可以使用內建的 fgetcsv() 函式, fgetcsv() 可以讀取 CSV 檔案並逐行放到 array 裡面, 假設以下為 CSV 檔內容:“User1″,”user1@domain.com” “User2″,”user2@domain.com” “Hello123″,”hello123@domain.com”如果 CSV 檔案每行多一個欄位, 做法也差不多, 例如 CSV 檔內容:“User1″,”user1@domain.com”,”HK” “User2″,”user2@domain.com”,”HK” “Hello123″,”hello123@domain.com”,”USA”程式碼會是:

PHP 發送 HTML 電郵

用 PHP 發送純文字 Email 很簡單, 但如果要發送一封 HTML 格式的 Email, 只需要在 mail() 裡面加入 MIME 版本及 Content-type header 就可以完成, 要注意的是如果發送的是中文電郵, 需要指定使用的 charset, 以下是發送 HTML Email 簡單的例子:以上用的方法是直接使用 mail() 函式, 再定義 MIME 及 Content-type …

PHP 透過 PHPMailer 發送帶附件電郵

PHPMailer 是大個功能強大的 PHP 電郵 class, 而且使用十分簡單, 原本要多行程式碼才可以完成關於電郵的工作, 用 PHPMailer 只要幾行就完成, 以下是用 PHPMailer 發送帶附件電郵的方法:1. 到 http://github.com/PHPMailer/PHPMailer 下載 PHPMailer.2. 將 PHPMailer 放到伺服器後, 在程式載入 PHPMailer 就可以使用, 以下是使用例子: 以上程式碼會發送電郵到 to@emailaddress, 並加入 /path/to/attach_file.pdf 在電郵的附件內。

PDO 連接 MySQL

PHP 連接 MySQL 可以很簡單直接地 mysql_connect() 或 mysqli_connect(), 那麼為什麼是要 PDO? PDO 是功能更為強大的資料庫 API, 即使將來要轉換資料庫系統, 只需更改連接的參數, 不需每個出現 mysql_* 函式的程式碼都修改, 以往要做到這樣, 通常是寫一個簡單的連接 MySQL class, 或者直接用 ADOdb 之類來做。另一個優點是 PDO 會自動將用戶的輸入清理乾淨, 即防止 SQL Injection, 對於一些初學者不知道什麼是 …

PHP 加密資料

要儲存一些敏感的資料在檔案或資料庫, 基於安全考慮還是將資料加密, 在需要時再進行解讀, 在 PHP 5.5 開始內建了加密函式 password_hash(), 操作上簡單了不少。如果在其他 PHP 版本, 便需要載入加密的相關模組, 以下是不同版本實現的方法:PHP 5.5 或以上: 要驗證用戶輸入的密碼, 可以用 password_verify():未到 PHP 5.5, 但在 5.3.7 或以上 (包括 Redhat PHP 5.3.3 或以上), 可以使用 password_compat …

PHP 日期計算

PHP 在 5.3 前要計算日期很麻煩, 在 PHP 5.3 開始已經內建相關函式, 計算日期變得簡單很多, 例如要計算兩個日期的差距, 可以這樣:而且輸入的日期格式限制很少, 例如上面的日期格式可以輸入 2015-05-12, 或者 12-05-2015 也可以。上面的例子是計算兩個日期相距的天數, 如果要計算往後 X 天的日期, 可以這樣做:

PHP 檢查 Email 及 URL 格式

要檢查 Email 及 URL 格式可以用正規表達式來做, 以下兩個正規表達式分別可以檢查 Email 及 URL 的格式是否正確。但要留意, 以下程式碼只會檢查格式, 而不會檢查兩者的有效性, 要檢查有效性及真實性需要用其他方法。PHP 檢查 Email 格式PHP 檢查 URL 格式

PHP 取得網址

PHP 內建變數包含多種不同資訊, 其中包括網址的部份, 使用上十分簡單, 只要直接調用即可:例如網址是 http://www.phpini.com/dir123/test.php?pid=123上面的網址會分為幾個變數: 要取得目前網址, 其實只要用 $_SERVER 及 $_SERVER, 例如: 但 http:// 通協定部份不可以直接調用, 要用 if 判斷一下, 可以這樣寫: