<?php
$chuang = 3;
$oop = new class(9) {
private $chuan;
function __construct($chuan){ $this->chuan = $chuan; }
function multiply($fu){ return $this->chuan * $fu; }
} ;
$outcome = $oop->multiply(8) * $chuang;
echo $outcome; // 9 * 8 = 72, 72 * 3 = 216
?>
<?php // 設為UTF-8不包含BOM標記(在格式/屬性/語言中設定)
// 載入use1&2.php檔案,因為使用了命名空間,所以同樣的 class 名稱不會造成衝突
include_once("use.php");
// 使用 abc\a 並取別名為 a_a
use abc\a as a_a;
// 使用別名叫做 a_a 底下的類別 hello & bye
echo a_a\hello::get(); //範圍解析操作符(::雙冒號)用於訪問靜態成員、類常量
echo "<br/>";
echo a_a\bye::get();
echo "<hr>";
// 使用 abc\b 並分別取別名為 get1 &get2
use abc\b\hello as get1;
use abc\b\bye as get2;
echo get1::get();
echo "<br/>";
echo get2::get();
echo "<hr>";
?>
<?php // 設為UTF-8不包含BOM標記(在格式/屬性/語言中設定)
//取名為 abc 的空間,在 namespace 後面的 class 都將會被歸類在 abc 底下
namespace abc\a;
class hello {
static public function get() { return "早安!"; }
}
class bye{
static public function get(){
return "中午見..."; }
}
namespace abc\b;
class hello {
static public function get(){
return "午安!"; }
}
class bye{
static public function get(){
return "晚上見..."; }
}
?>
自訂例外處理範例:<br/>
<?php
try{
$my1 = "您"; $my2 = "好";
ob_start();
setcookie("hello[0]", $my1, time()+1800);
setcookie("hello[1]", $my2, time()+1800);
if($_COOKIE["hello"][0] != $my1){
throw new Exception("請設定「允許網站儲存及讀取 Cookie 資料」,謝謝!"); }
foreach($_COOKIE["hello"] as $key => $value){
echo $value."<br/>";
}
} catch(Exception $e){ echo $e->getMessage(); }
?>
function Name(){ statements }
<?php
function design()
{ echo "基礎程式設計"; }
?>
<?php design(); ?>
<hr>
<?php
function myWeek($dw){
switch($mt){
case 0: echo "今天是週日"; break;
case 1: echo "今天是週一"; break;
case 2: echo "今天是週二"; break;
case 3: echo "今天是週三"; break;
case 4: echo "今天是週四"; break;
case 5: echo "今天是週五"; break;
case 6: echo "今天是週六"; break;
} }
$myTime = new DateTime("now", new DateTimeZone('Asia/Taipei'));
myWeek($myTime->format("w")); ?>
<?php
function num3($s1,$s2,$s3){
$sum1 = $s1+$s2+$s3;
return $sum1;
}
$sum2 = num3(80,70,90);
echo $sum2;
?>
<?php
function num3($s1,$s2,$s3){
$ave = ($s1+$s2+$s3)/3;
return array($s1,$s2,$s3,$ave);
}
list($a1,$b1,$c1,$d1) = num3(80,70,90);
echo "第一個數值:".$a1."<br>";
echo "第二個數值:".$b1."<br>";
echo "第三個數值:".$c1."<br>";
echo "數值平均:".round($d1,0)."<br>";
?>
<?php
class MyProtected{
public $myPub = "public:任何類別均可以存取資料,代表存取沒有任何限制。";
protected $myPro = "<br/>protected:僅有這個類別與子類別 (subclass) 可以存取。";
private $myPri = "private:僅有這個類別本身可以存取。";
}
$oo = new MyProtected();
$See = function($a){ echo $this->$a; };
$See -> call($oo, 'myPro');
?>