PHP Class question

GT9

Well-known member
  • Jun 22, 2013
    1,564
    167
    63
    [email protected]
    මචංලා PHP OOP Programming වලිදී class හදලා ඒවායින් objects create කරද්දී class එකේ තියෙන properties and methods භාවිතා කරනවනේ.

    මට දැන ගන්න අවශ්‍ය මෙන්න මේකයි.

    පහත මම ලියපු මේ සරල කෝ්ඩ් එක බලන්නකෝ...

    PHP:
    <?php
    
    class car{
    	public $color='red';
    }
    
    $toyota = new car();
    echo $toyota->color;
    
    ?>

    මේ කෝඩ් එකේදි මම car කියන class එකෙන් හදාපු $toyota කියන object එකේදි class එකේ තියෙන color කියන property එක echo කරල තියෙනවනේ... මේ වගේ එක ලෙවල් එකකට කෝඩ් කරන්න පුලුවන් මට මට දැනගන්න ඕන.

    මම දැකලා ත‍ියෙනවා සමහර php code වල ලෙවල් කීපයක් මේ වගේ access කරල තියෙනව..

    උදාහරණයක් කියනව නම්...

    PHP:
    echo $toyota->do->goforward();

    මට දැන ගන්න ඕන කොහොමද මේ වගේ ලෙවල් කීපයකට properties and methods access කරන්න පුලුවන් විදියට class එකක් ලියා ගන්නේ කියල. :)
     

    yasitha_o3

    Member
    Oct 5, 2006
    2,081
    83
    0
    37
    IN YOUR HEART
    machn eka wadi purama use wenne MVC wala.
    api contorller eke indala model eke thiyena method ekak use karaddi ehema karanwa.

    $result = $this->models_new_user->get_branch_count();

    me wage.
     
    • Like
    Reactions: GT9

    yasitha_o3

    Member
    Oct 5, 2006
    2,081
    83
    0
    37
    IN YOUR HEART
    <?php

    class Person {

    protected $name;

    function __construct($name) {
    $this->name = $name;
    }

    }

    class Business {

    protected $staff;

    function __construct(Staff $staff) {
    $this->staff = $staff;
    }

    function hire(Person $person) {
    $this->staff->add($person);
    }

    function getStaffMembers() {
    return $this->staff->getmembers();
    }

    }

    class Staff {

    protected $members = [];

    function __construct($members = []) {
    $this->members = $members;
    }

    function add(Person $person) {
    $this->members[] = $person;
    }

    function getmembers() {
    return $this->members;
    }

    }

    $yasitha = new Person('Yasitha C. Perera');
    $madhawa = new Person('Madhawa D. Perera');

    $staff = new Staff([$yasitha]);
    $links3 = new Business($staff);

    $links3->hire($madhawa);
    var_dump($links3->getStaffMembers());
    ?>
     

    GT9

    Well-known member
  • Jun 22, 2013
    1,564
    167
    63
    [email protected]
    සුදු පුතා;17782068 said:
    thanks :)

    machn eka wadi purama use wenne MVC wala.
    api contorller eke indala model eke thiyena method ekak use karaddi ehema karanwa.

    $result = $this->models_new_user->get_branch_count();

    me wage.

    මටත් මචං දැන ගන්න ඕන මේ විදියට ලෙවල් කීපයක් ඇක්සස් කරන්න පුලුවන් විදියට class එකක් ලියාගන්නේ කොහොමද කියල :)
     

    GT9

    Well-known member
  • Jun 22, 2013
    1,564
    167
    63
    [email protected]
    <?php

    class Person {

    protected $name;

    function __construct($name) {
    $this->name = $name;
    }

    }

    class Business {

    protected $staff;

    function __construct(Staff $staff) {
    $this->staff = $staff;
    }

    function hire(Person $person) {
    $this->staff->add($person);
    }

    function getStaffMembers() {
    return $this->staff->getmembers();
    }

    }

    class Staff {

    protected $members = [];

    function __construct($members = []) {
    $this->members = $members;
    }

    function add(Person $person) {
    $this->members[] = $person;
    }

    function getmembers() {
    return $this->members;
    }

    }

    $yasitha = new Person('Yasitha C. Perera');
    $madhawa = new Person('Madhawa D. Perera');

    $staff = new Staff([$yasitha]);
    $links3 = new Business($staff);

    $links3->hire($madhawa);
    var_dump($links3->getStaffMembers());
    ?>

    තෑන්ක්ස් මචං. ටිකක් සරල කෝඩ් එකක් ගහල දෙන්න බැරිද. එක සැරේටම ඔලුවට දාගන්න අමාරුයි.

    එල එල මචන් :)

    11.gif
     

    kolavari

    Well-known member
  • Aug 11, 2012
    33,746
    1
    25,653
    113
    කැළෑ පොජ්ජේ
    oya ahanne machan method chaining da?

    mehema karanna puluwan..

    PHP:
    <?php
    
    class car
    {
        private $action;
        function __construct()
        {
            $this->action = "";
        }
    
        function _do()
        {
            $this->action .= "Started...";
            return $this;
        }
    
        function move_forward($distance)
        {
            $this->action .= "Moved ".$distance." km....";
            return $this->action;
        }
    
    }
    
    $toyota = new car();
    echo $toyota->_do()->move_forward(20);
    meka nemei nam kiyanna...:)
     
    • Like
    Reactions: GT9

    GT9

    Well-known member
  • Jun 22, 2013
    1,564
    167
    63
    [email protected]
    oya ahanne machan method chaining da?

    mehema karanna puluwan..

    PHP:
    <?php
    
    class car
    {
        private $action;
        function __construct()
        {
            $this->action = "";
        }
    
        function _do()
        {
            $this->action .= "Started...";
            return $this;
        }
    
        function move_forward($distance)
        {
            $this->action .= "Moved ".$distance." km....";
            return $this->action;
        }
    
    }
    
    $toyota = new car();
    echo $toyota->_do()->move_forward(20);
    meka nemei nam kiyanna...:)

    මේක තමයි මචං. තෑන්ක්ස් මචං :)