note :PEAR的Calendar練習

*沒甚麼用意純粹貼程式碼上來而已,怕哪一天會用到
http://pear.php.net/package/Calendar套件下載網址

calendar.php
利用calendar顯示前一天與後一天
<?php
//從PEAR網站下載Calendar套件 http://pear.php.net/package/Calendar ,放到網站目錄裡 
//這裡只匯入Day跟Minute
require_once('C:\AppServ\www\pear_pd\Calendar-0.5.5\Day.php');
require_once('C:\AppServ\www\pear_pd\Calendar-0.5.5\Minute.php');

$Day = new Calendar_Day(2012,6,18);
$Min = new Calendar_Minute(2012,6,18,12,22);

//取得日期的時間數字
echo $Day->thisDay();   //顯示18
echo $Day->thisYear();  //顯示2012
echo "
";

//呼叫thisXXX()可加上true參數  此方法相當於mktime()
echo $Day->thisHour(true); 



//this方法還有顯示上一" "或是下一" " 分別為prevXXX() 跟nextXXX()
$Day2 = new Calendar_Day(2012,6,18);
$prevDay = $Day2->PrevDay();
echo "
昨天是".$prevDay."號";

$nextDay = $Day2->nextDay();
echo "
明天是".$nextDay."號";


?>
顯示結果 :

182012
1339977600
昨天是17號
明天是19號

calendar2.php
利用calendar做日期的驗證,檢查日期的正確性
<?
header("Content-Type:text/html;charset=UTF-8");
/*calendar也可以用來驗證表單有關於日期的資料
 需使用isValid()來驗證,結果為true或false
 若結果為false可以只用adjust()來調整
*/
if(isset($_POST))
{
 require_once('C:\AppServ\www\pear_pd\Calendar-0.5.5\Day.php');
 $day = new Calendar_Day($_POST['year'],$_POST['month'],$_POST['day']);
 //檢查
 if($day->isValid())
 {
  echo "正確日期";
 }
 else
 {
  $validator = & $day->getValidator(); //取得驗證物件
  $error = $validator->fetch();
  echo $error->getMessage();           //取得錯誤的訊息
  
  $day->adjust();
  //echo "調整後日期:".$day->thisDay();
  echo "
調整後日期:".$day->thisYear()."年".$day->thisMonth()."月".$day->thisDay()."日";
 
 }
}
?>
<html>
<head>
<title>日期驗證</title>
</head>
<body>
<form name="form1" id="form1" method="POST" action="<?php echo $_SERVER['PHP_SELF'];?>">
請輸入您的出生年月日<br/>
<input type="text" name="year" id="year" size="5">年 
<input type="text" name="month" id="month" size="2">月 
<input type="text" name="day" id="day" size="2">日
<br/>
<input type="submit" value="驗證日期"/>
</form>
</body>
</html>

顯示結果:
若日期是正確的
如果錯誤



留言

這個網誌中的熱門文章

[Android] 筆記 手機上測試自己的 APP

解決fatal: Not a git repository (or any of the parent directories): .git錯誤

[Android 筆記] 設定 ImageView 的圖檔來源