2012年12月3日 星期一

PHP 正規表示式



手機格式 09XX-XXX-XXX
09[0-9]{2}-[0-9]{3}-[0-9]{3}
手機格式 09XX-XXXXXX
09[0-9]{2}-[0-9]{6}
檢查E-mail
ereg(”[a-zA-Z0-9\._\+]+@([a-zA-Z0-9\.-]\.)*[a-zA-Z0-9\.-]+”, $Email);
if (eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$",$email)) echo "您的 E-Mail 通過初步檢查";
檢查IP格式(XXX.XXX.XXX.XXX)
[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}
檢查身分証格式
if ( strlen($_POST[id]) !=10 || ! eregi("^[A-Z]{1}[0-9]{9}",$_POST[id]) ) die("Error!") ;
日期的檢查,正確的話會顯示成DD.MM.YYYY的格式
    if (ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $date, $regs)) {

          echo "$regs[3].$regs[2].$regs[1]";

    }

       else {

               echo "Invalid date format: $date";

       }

2012年10月22日 星期一

PHP:函數列表

文件處理:
 basename → basename() 函數返回路徑中的文件名部分。
 file_exists → 檢查檔案是否存在。
 is_file → is_file() 函數檢查指定的文件名是否是正常的文件。

陣列函式:
 in_array → 搜尋陣列中值是否存在。
 array_diff → 計算陣列的差異。 使用範例。
 end → 將數組內部指針指向最後一個元素,並返回該元素的值(如果成功)。
 trim → () 函數從字符串的兩端刪除空白字符和其他預定義字符。
 
 
 
 
 
字串處理:
 strlen → 取得字串長度。
 mb_strlen → 取得字串長度。
 PS:strlen 和 mb_strlen 差異。

 str_pad → str_pad() 函數把字符串填充為指定的長度。
 substr → substr()函數返回字符串的一部分。

路徑函數:
 dirname → dirname() 函數返回路徑中的目錄部分。

array_diff() 去除陣列空值


由於没有去空值的數組函数,我们可以利用array_diff()函数 array_diff — 計算數組的差集說明
arrayarray_diff( array $array1, array $array2 [, array $ ...] )

array_diff() 返回一個數組,該數組包括了所有在 array1 中但是不在任何其它参數數組中的值。注意鍵名保留不變。
去空值的例子:

$array = array("a","b","",null,"c");
$array = array_diff($array, array(null,'null','',' '));即可去除