企業級專案常用驗證函數集,涵蓋金額、郵箱、網址、用戶名、密碼、電話、郵編、上傳檔案等 15 種驗證規則,含錯誤提示與特殊字符轉義工具。
| 函數 | 用途 | 關鍵邏輯 |
|---|---|---|
CheckMoney($val) | 金額格式 (99999.99) | ereg("^[0-9][.][0-9]$") |
CheckEmailAddr($email) | 郵箱格式 | eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*$") |
CheckWebAddr($url) | 網址格式 | ereg("^https://[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*$") |
CheckEmptyString($str) | 非空字串 | 型別檢查 + empty() + '' |
CheckLengthBetween($str,$min,$max=100) | 長度區間 | strlen(trim($str)) 比對 |
CheckUser($user) | 用戶名 (4-20 字元、字母數字底線) | 長度 + ereg("^[_a-zA-Z0-9]*$") |
CheckPassword($pwd) | 密碼 (同用戶名規則) | 同上 |
CheckTelephone($tel) | 電話號碼 | ereg("^[+]?[0-9]+([xX-][0-9]+)*$") |
CheckValueBetween($val,$min,$max) | 數值區間 | $val>=$min && $val<=$max |
CheckPost($post) | 郵編 (6 位數字) | strlen==6 && ereg("^[+]?[_0-9]*$") |
CheckExtendName($file,$allowedExts) | 上傳副檔名白名單 | 取 strrpos('.') 後綴,大小寫不敏感比對 |
CheckImageSize($file,$maxWH) | 圖片尺寸限制 | getimagesize() 寬高比對 |
Alert($msg,$back=0) / AlertExit($msg,$back=0):JS 彈窗提示並可選返回上頁或終止腳本。ReplaceSpecialChar($str):htmlspecialchars() + nl2br() + 空格實體化 + PHP 標籤轉義。ExchangeMoney($num):數字轉人民幣格式 (如 5645132.3155 → ¥5,645,132.31)。WindowLocation($url,$get,$getOther):產生 JS window.location 跳轉代碼片段。require_once 'c_check.inc';true/false,配合 AlertExit() 即時阻斷非法請求。ereg/eregi 已棄用 (PHP 5.3+),遷移時請改用 preg_match 並調整模式分隔符。C_字串、I_整數、N_數字、L_布林、A_陣列。此庫為早期 PHP 專案標準化輸入驗證的典型範例,現代框架 (Laravel/Symfony) 已內建更強大的驗證組件。