در این مثال قصد داریم وضعیت لاگین بودن یا نبودن کاربر را نمایش دهیم.در اینجا ویژگی لاگین بودن حالت private دارد.
با استفاده از متدهای login و logout وضعیت لاگین بودن کاربر را تغییر می دهیم. با استفاده از متد statusLogin وضعیت لاگین بودن کاربر را نمایش می دهیم.
مثال:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<?php class Member{ public $userName = ""; private $loggedin = false; public function login(){ $this->loggedin = true; } public function logout(){ $this->loggedin = false ; } public function statusLogin(){ return ($this->loggedin == true? "log in":"log out"); } } |
در مرحله بعد قصد تعریف کلاسی را داریم که برخی از خصوصیات کلاس پدر را به ارث ببرد.در این کلاس متدی به نام createPost داریم که بوسیله آن می توان پست ایجاد کنیم.این متد عنوان پست را هم می گیرد و نمایش میدهد.
متد دیگری به نام personName داریم که وظیفه آن برگشت دادن نام کاربر ثبت کننده مقاله است.
مثال:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
<?php class Member{ public $userName = ""; private $loggedin = false; public function login(){ $this->loggedin = true; } public function logout(){ $this->loggedin = false ; } public function statusLogin(){ return ($this->loggedin == true? "log in":"log out"); } } class Admin extends Member{ public function createPost($title){ echo "title post is ".$title; } public function personName($name){ echo $this->createPost("Medical")." create by:".$name; } } |
حال از روی کلاس Member آبجکت جدیدی می سازیم.
مثال:
1 2 3 4 |
$member = new Member(); $member->userName = "amir.javanmir"; $member->login(); echo $member->userName." status login is ".$member->statusLogin(); |
حال از روی کلاس admin آبجکت خود را تعریف می کنیم.
مثال:
1 2 3 4 |
$admin = new Admin(); $admin->userName = "admin.user"; $admin->login(); echo $admin->userName." status login is ".$admin->statusLogin(); |
حال در اینجا متد ساخت پست را فراخوانی می کنیم.
مثال:
1 2 3 |
$admin->createPost("PHP MVC"); echo "<br>"; $admin->personName("amir javanmir"); |
خروجی نهایی:
1 2 3 4 |
amir.javanmir status login is log in admin.user status login is log in title post is PHP MVC title post is Medical create by:amir javanmir |
نمای کلی کلاس اعضا:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
<?php class Member{ public $userName = ""; private $loggedin = false; public function login(){ $this->loggedin = true; } public function logout(){ $this->loggedin = false ; } public function statusLogin(){ return ($this->loggedin == true? "log in":"log out"); } } class Admin extends Member{ public function createPost($title){ echo "title post is ".$title; } public function personName($name){ echo $this->createPost("Medical")." create by:".$name; } } $member = new Member(); $member->userName = "amir.javanmir"; $member->login(); echo $member->userName." status login is ".$member->statusLogin(); echo "<br>"; $admin = new Admin(); $admin->userName = "admin.user"; $admin->login(); echo $admin->userName." status login is ".$admin->statusLogin(); echo "<br>"; $admin->createPost("PHP MVC"); echo "<br>"; $admin->personName("amir javanmir"); |