PHP Object Oriented Programming পর্ব-২: Making and using of Class, Object and Class Members

PHP Making and Using of Class and Object

PHP তে class declare বা ঘোষণা করার নিয়ম কি?

PHP তে “class” keyword এর পর letter অথবা underscore দিয়ে class name শুরু করতে হয়। class name এর পর curly braces দিয়ে class শুরু করতে হয়, এবং curly braces দিয়ে class শেষ করতে। curly braces এর ভিতরের অংশকে বলা হয় class body . class name হিসাবে PHP এর reserved word দেওয়া যাবেনা। চলুন একটা উদাহরণ দেখা যাক :

<?php
class SimpleClass // class Declaration 
{ //class start

  /*..........
    Class Body
    .........*/
    
} //class end
?>

PHP তে class থেকে object তৈরির নিয়ম কি?

PHP তে class থেকে অবজেক্ট তৈরী করতে হলে class এর বাহিরে class এর নামের পূর্বে new keyword দিতে হয়। অর্থাৎ new className অথবা new className(). আর object কে যেই variable এ রাখা হয় তাকে object handler বলা হয়। নিচের উদাহরণ দেখুন :

<?php
class SimpleClass
{ //class start

  /*..........
    Class Body
    .........*/
    
} //class end

$objHandler=new SimpleClass(); // Object Call
?>

Zend Certified PHP Engineering (ZCPE) Course

PHP তে class এর মধ্যে constant, property এবং method ঘোষণা করার নিয়ম কি?

PHP তে class এর মধ্যে constant, property এবং method ঘোষণা করতে হলে constant, property এবং method গুলোর নামের পূর্বে আপনার প্রয়োজন অনুসারে যেকোনো একটা visibility দিতে হয়। তবে constant এর বেলায় visibility ঐচ্ছিক বা optional.constant এ কোন visibility ঘোষণা না করলে বাই ডিফল্ট public থাকে। নিচের উদাহরণ দেখুন :

<?php
class SimpleClass
{
    public $var = 'a default value'; // public property declaration
    private const a="America"; // private constant Declaration

    // public method declaration
    public function displayVar() {
        echo $this->var;
    }
}
?>

PHP তে class এর মধ্যে অবস্থিত property, method এবং constant ব্যবহারের নিয়ম কি ?

PHP তে class এর মধ্যে অবস্থিত property, method এবং constant গুলো দুইভাবে ব্যবহৃত হতে পারে।

১. class এর বাহিরে।
২. class এর মধ্যে।

property, method এবং constant কে class এর বাহিরে ব্যবহার

PHP তে class এর মধ্যে অবস্থিত property, method এবং constant কে class এর বাহিরে দুইভাবে ব্যবহার করা যায়।

  • object handler বা object variable দিয়ে : PHP তে class এর মধ্যে অবস্থিত যেকোনো public Non-static property এবং public Non-static method কে class এর বাহিরে যেকোনো কাজে ব্যবহার করতে চাইলে সরাসরি object handler বা object variable দিয়ে ব্যবহার করা যায়। নিচের উদাহরণ দেখুন :
    <?php
    class SimpleClass
    {
        // property declaration
        public $var = 'Hello Simple Class';
    
        // method declaration
        public function displayVar() {
            echo $this->var;
        }
    }
    $obj=new SimpleClass;
    $obj->displayVar(); 
    /*
    access class method using Object Variable $obj
     Result: Hello Simple Class
    */
    ?>
    
  • “::” scope resolution operator PHP তে class এর মধ্যে অবস্থিত যেকোনো public static property, public static method এবং public constant কে class এর বাহিরে যেকোনো কাজে ব্যবহার করতে চাইলে “:: scope resolution operator” ব্যবহার করতে হয়। নিচের উদাহরণ দেখুন :
    <?php
    class SimpleClass
    {
        // property declaration
        public $var = 'Hello Simple Class';
    public const a="America";
    
        // Static method declaration
        public static function sayHello() {
            echo "Hello World";
        }
    }
    SimpleClass::sayHello();
    echo SimpleClass::a;
    /*
    access class method using directly class name and scope resolution Operator ::
     Result: Hello World
    */
    ?>
    

Zend Certified PHP Engineering (ZCPE) Course

property, method এবং constant কে class এর মধ্যেই ব্যবহার

PHP তে class এর মধ্যে অবস্থিত property, method এবং constant কে class এর মধ্যেই দুইভাবে ব্যবহার করা যায়।

  • “$this” pseudo-variable ব্যবহার করে। নিচের উদাহরণ দেখুন :
    <?php
    class SimpleClass
    {
        // property declaration
        public $var = 'Hello Simple Class';
    
        //  method declaration 
        public function sayHello() {
            echo $this->var; // use $this to show $var value
        }
    }
    $obj=new SimpleClass;
    $obj->sayHello(); // Result: Hello Simple Class
    ?>
    
  • “::” scope resolution operator PHP তে class এর মধ্যে অবস্থিত যেকোনো static property, static method এবং constant কে class এর মধ্যেই যেকোনো কাজে ব্যবহার করতে চাইলে “:: scope resolution operator” ব্যবহার করতে হয়। নিচের উদাহরণ দেখুন :
    <?php
    class SimpleClass
    {
        // property declaration
       static public $var = 'Hello Simple Class';
       const a="America";
    
        //  method declaration 
        public function sayHello() {
            echo self::$var; // use self with scope resolution Operator
            echo "<br>", self::a;
        }
    }
    $obj=new SimpleClass;
    $obj->sayHello();
    
    ?>
    

আমি মাসুদ আলম, বাংলাদেশের ৩৬ তম Zend Certified Engineer । ২০০৯ সালে কম্পিউটার সাইন্স থেকে বেচেলর ডিগ্রী অর্জন করি। দীর্ঘ ১৫ বছর আমি Winux Soft, SSL Wireless, IBCS-PRIMAX, Max Group, Canadian International Development Agency (CIDA), Care Bangladesh, World Vision, Hellen Keller, Amarbebsha Ltd সহ বিভিন্ন দেশি বিদেশী কোম্পানিতে ডেটা সাইন্স, মেশিন লার্নিং, বিগ ডেটা, ওয়েব ডেভেলপমেন্ট এবং সফটওয়্যার ডেভেলপমেন্ট এর উপর বিভিন্ন লিডিং পজিশন এ চাকরি এবং প্রজেক্ট লিড করি। এছাড়াও বাংলাদেশের ১৮৫ জন জেন্ড সার্টিফাইড ইঞ্জিনিয়ার এর মধ্যে ১২০ এরও অধিক ছাত্র আমার হাতে জেন্ড সার্টিফাইড ইঞ্জিনিয়ার হয়েছেন। বর্তমানে w3programmers ট্রেনিং ইনস্টিটিউট এ PHP এর উপর Professional এবং Advance Zend Certified PHP -8.2 Engineering, Laravel Mastering Course with ReactJS, Python Beginning To Advance with Blockchain, Machine Learning and Data Science, Professional WordPress Plugin Development Beginning to Advance কোর্স করাই। আর অবসর সময়ে w3programmers.com এ ওয়েব টেকনোলজি নিয়ে লেখালেখি করি।

One thought on “PHP Object Oriented Programming পর্ব-২: Making and using of Class, Object and Class Members

  1. ?php
    class SimpleClass
    {
    // property declaration
    public $var = ‘Hello Simple Class’;
    public const a=”America”;

    // Static method declaration
    public static function sayHello() {
    echo “Hello World”;
    }
    }
    SimpleClass::sayHello();
    echo SimpleClass::a;
    /*
    access class method using directly class name and scope resolution Operator ::
    Result: Hello World Result Will be Hello World America
    */
    ?>

Leave a Reply