2008年9月13日 星期六

[PHP]新增Cookie資料

< ?php
//開啟輸出暫存器
ob_start();
?>

< html>
< head>
< meta http-equiv="Content-Type" content="text/html; charset=big5">
< title>建立Cookie< /title>
< /head>
< body>

< ?php
$name="Linda";
$value="努力存錢!";

//設定有效期限為目前的時間加上一星期
$expire=strtotime("+1 week",time());

//建立Cookie
setcookie($name,$value,$expire);

//出清輸出暫存器
ob_end_flush();

//顯示目前日期
$now=getdate(time());
$shownow=$now["month"]." ".$now["mday"].", ".$now["year"];

//顯示有效日期
$expday=getdate($expire);
$showexp=$expday["month"]." ".$expday["mday"].", ".$expday["year"];

echo "Cookie的名稱是: ".$name."

";
echo "目前的時間: ".$shownow."

";
echo "Cookie有效期限: ".$showexp;
?>

< /body>
< /html>

2008年9月12日 星期五

[PHP][FPDF]產生PDF


require('fpdf.php'); //引入fpdf類別檔
$pdf=new FPDF(); //產生PDF物件
$pdf->AddPage(); //新增一頁
$pdf->SetFont('Times','B',14); //設定字型
$pdf->Cell(50,20,'Hello World!'); //儲存格文字
$pdf->Output(); //產生PDF檔
?>

[PHP]產生PDF問題

出現的問題
============================

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\pdftest.php:9) in C:\AppServ\www\class.pdf.php on line 1916

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\pdftest.php:9) in C:\AppServ\www\class.pdf.php on line 1917

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\pdftest.php:9) in C:\AppServ\www\class.pdf.php on line 1919
%PDF-1.3 %睼珃 1 0 obj << /Type /Catalog /Outlines 2 0 R /Pages 3 0 R >> endobj 2 0 obj << /Type /Outlines /Count 0 >> endobj 3 0 obj << /Type /Pages /Kids [6 0 R ] /Count 1 /Resources << /ProcSet 4 0 R /Font << /F1 8 0 R >> >> /MediaBox [0.000 0.000 595.280 841.890] >> endobj 4 0 obj [/PDF /Text ] endobj 5 0 obj << /Creator (R and OS php pdf writer, http://www.ros.co.nz) /CreationDate (D:20080910) >> endobj 6 0 obj << /Type /Page /Parent 3 0 R /Contents 7 0 R >> endobj 7 0 obj << /Filter /FlateDecode /Length 61 >> stream xr Q06?00P?0?66P IQ苡3T0 ?)(hd斗鳵??憭h*)?@?E endstream endobj 8 0 obj << /Type /Font /Subtype /Type1 /Name /F1 /BaseFont /Helvetica /Encoding /WinAnsiEncoding >> endobj xref 0 9 0000000000 65535 f 0000000015 00000 n 0000000080 00000 n 0000000126 00000 n 0000000280 00000 n 0000000309 00000 n 0000000414 00000 n 0000000477 00000 n 0000000610 00000 n trailer << /Size 9 /Root 1 0 R /Info 5 0 R >> startxref 717 %%EOF

=================問題解法===============
這一個問題的原因是因為我在php的檔案裡有加了html的關係,因為我是把
程式
?>

加在< body> 與< /body>之間
然後沒有在windows裡頭php.ini也要加上;include_path='.;C:\php5\pear'
這一行。
程式
>?
單純放在php網頁檔去跑,這樣就可以成功發佈PDF檔了。

2008年9月11日 星期四

[PHP]清單的設計

============html=============
< form id="form1" name="form1" method="post" action="like.php">
< label>
< br />
姓名
< input name="uname" type="text" size="5" maxlength="5" />
< br />
< br />
職業
< select name="select1">
< option value="總經理">總經理< /option>
< option value="業務">業務< /option>
< option value="行政助理">行政助理< /option>
< option value="工程">工程師< /option>
< option value="經理">經理< /option>
< /select>
< /label>
< p>喜歡的水果< /p>
< p>
< label>
< select name="select2[]" size="4" multiple="multiple">
< option value="香蕉">香蕉< /option>
< option value="西瓜">西瓜< /option>
< option value="蓮霧">蓮霧< /option>
< option value="櫻桃">櫻桃< /option>
< option value="水梨">水梨< /option>
< option value="文旦">文旦< /option>
< option value="桃子">桃子< /option>
< /select>
< /label>
< /p>
< p>
< label>
< input type="submit" name="Submit" value="送出" />
< /label>
< label>
< input type="reset" name="Submit2" value="重設" />
< /label>
< /p>
< /form>
=====================PHP====================
< ?php
echo $_POST[uname]."您好

";
echo "您的職稱是".$_POST["select1"]."

";
echo "您喜歡的水果:

";
$arr=$_POST["select2"];
print_r($arr);

?>

[PHP]核取方塊的應用

============HTML============
< form id="form1" name="form1" method="post" action="baseball.php">
< p class="style2">您的姓名
< label>
< input name="uname" type="text" size="10" maxlength="5" />
< /label>
< /p>
< p class="style2">選取您喜歡的球隊


< p class="style2">
< label>
< input type="checkbox" name="checkbox1" value="兄弟象" checked />
< /label>
兄弟象
< label>
< input type="checkbox" name="checkbox2" value="LaNew熊" />
< /label>
LaNew熊
< label>
< input type="checkbox" name="checkbox3" value="統一獅" />
< /label>
統一獅
< label>
< input type="checkbox" name="checkbox4" value="興農牛" />
< /label>
興農牛
< label>
< input type="checkbox" name="checkbox5" value="米迪亞暴龍" />
< /label>
米迪亞暴龍
< label>
< input type="checkbox" name="checkbox6" value="中信鯨" />
< /label>
中信鯨
< /p>

< p>
< label>
< input type="submit" name="Submit" value="送出" />
< /label>
< label>
< input type="reset" name="Submit2" value="重設" />
< /label>
< /p>
< /form>

=================PHP=====================
< ?php
echo $_POST[uname]."球迷< P>";
echo "你喜歡的球隊有:< P>";

for($x=1;$x<7;$x++)
{
$str="checkbox".$x;

if(isset($_POST[$str]))
//true代表被選取
{
echo $_POST[$str].".";
}

}
?>

2008年9月10日 星期三

[PHP]選項鈕的應用

=============HTML============
< form id="form1" name="form1" method="post" action="test6.php">
< p>訂購單< /p>
< p>姓名:
< label>
< input name="uname" type="text" id="uname" />
< /label>
< /p>
< p>電話:
< label>
< input name="uphone" type="text" id="uphone" />
< /label>
< /p>
< p>地址:
< label>
< input name="addr" type="text" id="addr" />
< /label>
< /p>
< p>郵寄方式:


< p>
< label>
< input name="delivery" type="radio" value="掛號" />
< /label>
掛號
< label>
< input name="delivery" type="radio" value="普通" checked />

< /label>
普通
< label>
< input name="delivery" type="radio" value="快捷" />
< /label>
快捷 < /p>
< p>
< input type="hidden" name="param" value="訂購單確認" />

< label>
< input type="submit" name="Submit" value="送出" />
< /label>
< label>
 
< input type="reset" name="Submit2" value="重設" />
< /label>
< /p>
< /form>

=================PHP=================
< ?php
echo "< b>< font color='purple'>".$_POST["param"]."< /font>

";
echo "< b>< font color='blue'>".$_POST["uname"]."< /font>< /b>的連絡電話是< b>< font color='blue'>".$_POST[uphone]."< /font>< /b>< p>";
echo "您的訂單會依照< b>< font color='blue'>".$_POST["delivery"]."< /font>< /b>送到下列地址";

echo "< hr>< p>";
echo "< p>< font color='blue'>".$_POST[addr]."< /font>< /br>"
?>

2008年9月9日 星期二

[PHP]文字類相關欄位

============HTML=========
< form id="form1" name="form1" method="post" action="test4.php">
< p>請輸入資料< /p>
< p>帳號
< label>
< input name="uname" type="text" size="10" />
< /label>
< /p>
< p>密碼
< label>
< input name="upass" type="password" size="15" />
< /label>
< /p>
< p>
< label>
備註
< textarea name="note" rows="8" id="note">< /textarea>
< /label>
< /p>
< p>

< input type="hidden" name="param" value="隱藏欄位" />
< /p>
< p>
< label>
< input type="submit" name="Submit" value="送出" />
< /label>
< label>
< input type="reset" name="Submit2" value="重設" />
< /label>
< /p>


< /form>
===================PHP================

< ?php
echo "< h2>< font color='purple'>".$_POST["param"]."< /font>< /h2>";

echo "會員名稱:".$_POST["uname"]."< p>";
echo "會員密碼:".$_POST["upass"]."< p>";
echo "備註:".$_POST["note"]."< p>";


?>

[PHP]header函數

< ?php
echo "網頁轉向";
header("Refresh:3;url=http://www.yahoo.com.tw");
//利用header()函數使網頁轉向
ob_end_flush();
//關閉output buffer

?>

=========
網頁轉向:
header("location:指定路徑");
更新網頁:
header("Refresh:間格秒數");
資料類型:
header("Content-type:MIME資料類型");
保留期限:
header("Expires:"時間字串);

[PHP]資料傳遞

===============HTML=============
< form id="form1" name="form1" method="post" action="test3.php">
< p>請輸入資料< /p>
< p>帳號
< label>
< input name="uname" type="text" size="10" />
< /label>
< /p>
< p>密碼
< label>
< input name="upass" type="password" size="15" />
< /label>
< /p>
< p>
< label>
< input type="submit" name="Submit" value="送出" />
< /label>
< label>
< input type="reset" name="Submit2" value="重設" />
< /label>
< /p>
< /form>


=================PHP=====================
< ?php
echo "< h2>< font color='purpls'>您的資料為:< /font>< /h2>";

echo "您的帳號:".$_POST["uname"]."

";
echo "您的密碼:< font color='red'>".$_POST["upass"]."< /font>< p>";


?>

[PHP]類別與物件相關函數

< ?php
//宣告類別
class vehicle
{
//相關屬性
var $type;
var $model;
var $color;

function set_type($tt){
//設定交通工具屬性
$this->type=$tt;
}

function set_model($mm){
//設定車子的廠牌
$this->model=$mm;
}

function set_color($cc){
//設定車子顏色
$this->color=$cc;
}

function getcartype() {
//傳回$type屬性
return $this->type;
}

function getmodel(){
//傳回$model屬性
return $this->model;
}

function getcolor(){
//傳回$color屬性
return $this->color;
}
}//end vehicle class

//建立物件實體
$PeterCar=new vehicle;

//使用類別相關函數
$clsname=get_class($PeterCar);
echo "\$PeterCar物件對應的類別是 : ".$clsname."< p>";

//顯示類別中的所有方法清單
$method_array=get_class_methods($clsname);
echo "$clsname 類別的所有成員函數: < p>";
print_r($method_array);

//顯示類別中的所有屬性清單
$property_array=get_class_vars($clsname);
echo "

$clsname 類別的所有成員資料:

";
print_r($property_array);
?>
==================結果================
類別相關函數
$PeterCar物件對應的類別是 : vehicle
vehicle 類別的所有成員函數:

Array ( [0] => set_type [1] => set_model [2] => set_color [3] => getcartype [4] => getmodel [5] => getcolor )

vehicle 類別的所有成員資料:

Array ( [type] => [model] => [color] => )

[PHP]介面

< ?php
//宣告介面(類別的原型,不含任何屬性定義)
interface itemtotal
{
//宣告介面成員函數
function item_total($x);
}

//宣告另一個介面
interface owner
{
//宣告介面成員函數
function get_owner($x);
}

//cart類別引用itemtotal和owner介面
class cart implements itemtotal,owner
{
//宣告自已的成員資料
var $owner;
var $store;
var $item=0;

//自訂自己的成員函數
function get_store()
{
//指定商店的名稱
$this->store="PHP學習";
return $this->store;
}

//重新定義介面的item_total()函數
function item_total($x)
{
//將購買項目加總到原有的$item屬性
$this->item +=$x;

//傳回$item屬性值
return $this->item;
} //end function

//重新定義介面的get_owner()函數
function get_owner($x)
{
$this->owner=$x;
//傳回owner屬性值
return $this->owner;
}
} //end class

//建立新的物件
$Elearning=new cart;
echo "這家網路商店的名稱 : < font color='blue'>".$Elearning->get_store()."< /font>< p>";
echo "目前購物車的車主是 : < font color='blue'>".$Elearning->get_owner("Elvin")."< /font>< p>";

$total=$Elearning->item_total(100);
echo "加買100項後< br/>";
echo "目前購買的數量是 : < font color='blue'>".$total."< /font>< p>";

$total=$Elearning->item_total(5);
echo "加買5項後< br/>";
echo "目前購買的數量是 : < font color='blue'>".$total."< /font>

";

?>
==================結果=================
介面
這家網路商店的名稱 : PHP學習
目前購物車的車主是 : Elvin

加買100項後
目前購買的數量是 : 100

加買5項後
目前購買的數量是 : 105

2008年9月4日 星期四

[PHP]多形性的應用

======PHP=========
< ?php
//宣告類別
class cart
{//建立購物車類別
var $owner;
var $store;

function get_owner($x)
{
$this->owner=$x;
return $his->owner;
} //end function

} //end cart class

class store_cart extends cart
{//繼承自cart類別的商店購物車

function get_owner($x)
{
//設定商店名稱
$this->store="大家發商店";
echo "< font color='green'>歡迎光臨 < i>".$this->store."< /i>< p>";
echo $x." 客戶您好< /font>

";
} //end function

} //end store_cart class

class book_cart extends cart
{//繼承自cart類別的書店購物車

function get_owner($x)
{
//設定商店名稱
$this->store="志凌書店";
echo "< font color='blue'>歡迎光臨 < i>".$this->store."< /i>< p>";
echo $x." 客戶您好< /font>

";
} //end function
} //end book_cart class

//宣告新的物件
$Linda=new book_cart;
//使用類別內自訂的成員函數
$Linda->get_owner("林錦雀");

//宣告新的物件
$Caroline=new store_cart;
//使用類別內自訂的成員函數
$Caroline->get_owner("羅微娟");

?>

[PHP]類別的繼承

< ?php
//宣告類別
class vehicle
{
//相關屬性
var $type;
var $model;
var $color;

function set_type($tt){
//設定交通工具屬性
$this->type=$tt;
}

function set_model($mm){
//設定車子的廠牌
$this->model=$mm;
}

function set_color($cc){
//設定車子顏色
$this->color=$cc;
}

function getcartype() {
//傳回$type屬性
return $this->type;
}

function getmodel(){
//傳回$model屬性
return $this->model;
}

function getcolor(){
//傳回$color屬性
return $this->color;
}
}//end vehicle class

class car extends vehicle
{//繼承自vehicle 的子類別
var $wheel;
function showcar($x,$y,$z)
{
//是四輪的車子
$this->wheel=4;

//呼叫父類別的函數
parent::set_type($x);
parent::set_model($y);
parent::set_color($z);

//顯示車子的相關資料
echo "你車子的類型是 : < font color='blue'> ".$this->type."< / font>< p>";
echo "你車子的輪子數是 : < font color='blue'> ".$this->wheel."< /font>< p>";
echo "你車子的廠牌是 : < font color='blue'> ".$this->model."< /font>< p>";
echo "你車子的顏色是 : < font color='blue'> ".$this->color."< /font>< p>";
} //end function
} //end car class

//建立新的 car 物件
$Alicecar=new car;

//使用物件所提供的方法
$Alicecar->showcar("家用房車","Nissan","red");
? >

================結果====================
類別繼承
你車子的類型是 : 家用房車
你車子的輪子數是 : 4

你車子的廠牌是 : Nissan

你車子的顏色是 : red

[PHP]設定類別存取權限

< ?php
class vehicle
{
public $type;
protected $model;
private $color;
function set_type($tt){
$this->type=$tt;
}

function set_model($mm){
$this->model=$mm;
}

function set_color($cc){
$this->color=$cc;
}

function getcartype(){
return $this->type;
}

function getmodel(){
return $this->model;
}

function getcolor(){
return $this->color;
}

}

$Lindacar=new vehicle;
$Lindacar->type="Van";
$Lindacar->set_model("TOYOTA");
$Lindacar->set_color("silver");

echo "Linda的車型是 : ".$Lindacar->getcartype()."< p>";
echo "Linda車的顏色是 : ".$Lindacar->getcolor()."< p>";
echo "Linda車的廠牌是 : ".$Lindacar->getmodel();

?>
==============結果===========
Linda的車型是 : Van
Linda車的顏色是 : silver

Linda車的廠牌是 : TOYOTA

[PHP]解構子

< ?php
//宣告類別
class cart
{
var $owner;
var $price=300; //每套產品的定價
var $goods;
function cart($name){
//建構子
$this->owner=$name;
echo "< h2>< font color=purple>歡迎進入志凌資訊學習網!< /h2>";
echo $name."建立了cart類別的物件< / font>

";
}
function add_item($title, $amt){
//新增項目到購物車中
$this->goods[$title] +=$amt;
//傳回數量
return $amt;
}
function remove_item($title, $amt){
//由購物車內移除項目
if($this->goods[$title]>$amt)
{
$this->goods[$title] -=$amt;
//傳回數量
return $amt;
}else{
echo "錯誤!! $title 移除的量大於該項目既有的量!< br>";
return false;
}
}
function get_owner(){
//傳回購物車擁有者的名稱
return $this->owner;
}
function get_goods(){
//傳回購物車中的物件清單
return $this->goods;
}
function __destruct(){
//解構子
echo "

即將結束程式 !....";
}
}//end class

//建立一個新物件並指定名稱
$mycart=new cart("Alice");

//新增物品到購物車
$item += $mycart->add_item("PHP & MySQL",3);

//取得購物車的擁有者
$na=$mycart->get_owner();
echo $na."< p>";

//取得購物車內的物件清單
$list=$mycart->get_goods();
print_r($list)."< p>";
?>

=============================================

畫面下方會多出程式正在結束

[PHP]建構子

< ?php
//宣告類別
class cart
{
var $owner;
var $price=300; //每套產品的定價
var $goods;
function cart($name){
//建構子
$this->owner=$name;
echo "< h2>< font color=purple>歡迎進入志凌資訊學習網!< /h2>";
echo $name."建立了cart類別的物件< /font>< p>";
}
function add_item($title, $amt){
//新增項目到購物車中
$this->goods[$title] +=$amt;
//傳回數量
return $amt;
}
function remove_item($title, $amt){
//由購物車內移除項目
if($this->goods[$title]>$amt){
$this->goods[$title] -=$amt;
//傳回數量
return $amt;
}else{
echo "錯誤!! $title 移除的量大於該項目既有的量!< br>";
return false;
}
}
function get_owner(){
//傳回購物車擁有者的名稱
return $this->owner;
}
function get_goods(){
//傳回購物車中的物件清單
return $this->goods;
}
}//end class

$item=0;
//建立一個新物件並指定名稱
$mycart=new cart("Peter");

//新增物品到購物車
$item += $mycart->add_item("ASP.NET",3);
$item += $mycart->add_item("Java",2);
$item += $mycart->add_item("JavaScript",3);
$item += $mycart->add_item("VB",4);
$item += $mycart->add_item("ASP",1);

//取得購物車的擁有者
$na=$mycart->get_owner();
echo $na."< p>";

//取得購物車內的物件清單
$list=$mycart->get_goods();
print_r($list)."< p>";

echo "

採購總金額 : ".$item * $mycart->price;
?>

[PHP]類別與物件

< ?php
//宣告類別
class cart
{
var $owner;
var $price=300; //每套產品的定價
var $goods;
function add_item($title, $amt){
//新增項目到購物車中
$this->goods[$title] +=$amt;
//傳回數量
return $amt;
}
function remove_item($title, $amt){
//由購物車內移除項目
if($this->goods[$title]>$amt)
{
$this->goods[$title] -=$amt;
//傳回數量
return $amt;
}else{
echo "錯誤!! $title 移除的量大於該項目既有的量!< br>";
return false;
}
}
function get_owner(){
//傳回購物車擁有者的名稱
return $this->owner;
}
function get_goods(){
//傳回購物車中的物件清單
return $this->goods;
}
}//end class

$item=0;
//建立一個新物件
$mycart=new cart;
//指定購物車名稱
$mycart->owner="Linda";

//新增物品到購物車
$item += $mycart->add_item("Access",3);
$item += $mycart->add_item("Word",2);
$item += $mycart->add_item("PowerPoint",3);
$item += $mycart->add_item("VB",4);
$item += $mycart->add_item("Access",1);

//移除購物出車中的物品
$item -= $mycart->remove_item("PowerPoint",1);
//取得購物車的擁有者
$na=$mycart->get_owner();
echo $na."

";

//取得購物車內的物件清單
$list=$mycart->get_goods();
print_r($list)."< p>";

echo "< p>採購總金額 : ".$item * $mycart->price;
?>

2008年9月3日 星期三

[PHP]require關鍵字-無外部檔會產生錯誤並中斷程式

============外部檔=================
< ?php
function ddcheck($m,$d,$y)
{
//判斷所輸入的資料是否是合法的日期資料
if(checkdate($m,$d,$y)){
//將輸入的資料轉成UNIX時間戳記
$dd=mktime(0,0,0,$m,$d,$y);
//以date()函數顯示對應格式
echo date("M-d-Y",$dd);
}else{
echo "所輸入的資料不是合法的日期格式!";
}
}

? >

==============PHP檔======================
< ?php
require "ddfunc.inc";

$mm=8;
$dd=20;
$yy=2005;

echo "< p>輸入的資料是 : < br/>";
echo $mm." , ".$dd." , ".$yy."< br/>";

//呼叫載入檔案中的函數
ddcheck($mm,$dd,$yy);

//改變$dd值
echo "< p>輸入的資料是 : < br/>";
$dd=34;
echo $mm." , ".$dd." , ".$yy."< br/>";

//呼叫載入檔案中的函數
ddcheck($mm,$dd,$yy);

? >
============產生結果================

輸入的資料是 :
8 , 20 , 2005
Aug-20-2005

輸入的資料是 :
8 , 34 , 2005
所輸入的資料不是合法的日期格式!

[PHP]include關鍵字呼叫-無外部檔會警告不會中斷

=============外部檔============
< ?php
function average($a,$b)
{
//先判斷輸入的資料是否是數值
if(is_numeric($a) && is_numeric($b)){
$avg=($a+$b)/2;
//傳回平均值
return $avg;
}else{
return "< font color='red'>所輸入的資料非數值 !< /font>";
}
}

function sum($a,$b)
{
//先判斷輸入的資料是否是數值
if(is_numeric($a) && is_numeric($b)){
$total=$a+$b;
//傳回總計
return $total;
}else{
return "< font color='red'>所輸入的資料非數值 !< /font>";
}
}
? >

=============PHP===================
< ?php
include "funs.inc";
$x=123;
$y=456;
echo "輸入的值為".$x.",".$y."< p>";

echo "平均值為".average($x,$y)."< p>";
echo "總和為".sum($x,$y)."< p>";

?>

[PHP]不定名稱函數

======================HTML部份========================
< form name="form1" method="post" action="test18.php">
< p class="style1">請輸入一個數值< /p>
< p>
< input type="text" name="number">
< /p>
< p>
< input name="transform" type="radio" value="bin">
二進位
< input name="transform" type="radio" value="oct">
八進位
< input name="transform" type="radio" value="hex">
十六進位< /p>


< input type="submit" name="Submit" value="送出">
< input type="reset" name="Submit2" value="清除">
< /p>
< /form>

=====================PHP部份=======================
< ?php

//轉換成為二進位
function bin($n)
{
echo "二進位表示 : ".decbin($n);
}
//轉為八進位
function oct($n)
{
echo "八進位表示 : ".decoct($n);
}
//轉為十六進位
function hex($n)
{
echo "十六進位表示 : ".dechex($n);
}

//取得表單傳遞過來的資料
$nm=$_POST[number];
$choose=$_POST[transform];

echo "輸入的數值是 : ".$nm."< br/>";
echo "選取的模式是 : ".$choose."< p>";

//呼叫不定名稱函數
//依不同的變數值去呼叫不同的函數
$choose($nm);


?>

[PHP]不定參數函數

< ?php
//不定參數函數
function print_me()
{
$nm=func_num_args();
echo "此次共傳 ".$nm." 個參數。< br/>";
for($x=0;$x<$nm;$x++){
echo func_get_arg($x)."< br/>";
}
}
//呼叫函數,傳遞2參數
print_me("Linda","Peter");

echo "

";
//呼叫函數,傳遞3參數
print_me("Happy","Holiday","Elvin");

? >

========================顯示結果=======================
此次共傳 2 個參數。
Linda
Peter

此次共傳 3 個參數。
Happy
Holiday
Elvin

2008年9月2日 星期二

[PHP]利用巢狀函數轉換進位

===HTML部份語法===
< body >

< h2>請輸入一個整數:< /h2>
< form name="form1" method="post" action="test16.php">

< p>
< input type="text" name="number">
< /p>
< p>
< input type="submit" name="submit" value="送出">
< input type="reset" name="reset" value="reset" id="reset" >

< /p>


< /form>
< /body>

==================PHP部份============
< ?php
$n=$_POST[number];
function nest_transform($n)
{
function bin($n)
{
return decbin($n);
}

function oct($n)
{
return decoct($n);
}

function hex($n)
{
return dechex($n);
}

echo "< table border=2 width=80%>";
echo "< tr>二進位< /th>< td>".bin($n)."< /td>< /tr>";
echo "< tr>< th>八進位< /th>< td>".oct($n)."< /td>< /tr>";
echo "< tr>< th>十六進位< /th>< td>".hex($n)."< /td>< /tr>";


}

echo $n."< /br>";
nest_transform($n);


?>

[PHP]遞迴呼叫-階層

< ?php
function factory($n)
{//判定是否為整數且大於零
if(is_integer($n) && $n>0){
if($n>=2){
$temp=$n ;
$n=$n-1;
//遞迴呼叫本身
$total=$temp * factory($n);
return $total;
}else{
return 1;
}
}else{
echo "請輸入大於零的整數";
}
}

//呼叫factory 函數
echo "5! = ".factory(5)."< br/>";
echo "6! = ".factory(6)."< br/>";
echo "7! = ".factory(7)."< br/>";
? >