কম্পিউটার

PHP-তে STATIC এবং INSTANCE পদ্ধতি ব্যাখ্যা কর।


পিএইচপি-তে, স্ট্যাটিক পদ্ধতির চেয়ে উদাহরণ পদ্ধতিগুলি পছন্দের অনুশীলন। যাই হোক না কেন, এটা বলার অপেক্ষা রাখে না যে স্ট্যাটিক পদ্ধতিগুলি সহায়ক নয়, তাদের একটি স্বতন্ত্র এবং অনন্য উদ্দেশ্য রয়েছে। এখানে আমরা PHP-এ স্ট্যাটিক এবং ইনস্ট্যান্স পদ্ধতির মধ্যে তুলনা আলোচনা করছি।

এখানে উল্লেখ্য যে ইনস্ট্যান্স মেথড সবসময় ক্লাসের অবজেক্টের সাথে সংযুক্ত থাকে অন্যদিকে স্ট্যাটিক মেথড সবসময় ক্লাসের সাথে সংযুক্ত থাকে।

প্রথমে স্ট্যাটিক পদ্ধতি সম্পর্কে কথা বলুন। পিএইচপি-তে স্ট্যাটিক পদ্ধতি অন্যান্য অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং ভাষার মতোই। PHP-এ স্ট্যাটিক পদ্ধতি ব্যবহার করার জন্য গুরুত্বপূর্ণ ক্ষেত্রে। স্থির পদ্ধতি ব্যবহার করা প্রয়োজন যখন নির্দিষ্ট তথ্য সমগ্র ক্লাসের জন্য স্থির থাকে। মূলত, স্ট্যাটিক পদ্ধতিটি ব্যবহার করা হয় যখন সেই ক্লাসের বস্তুর সাহায্য ছাড়াই সেই পদ্ধতিটি অ্যাক্সেস করতে হয়।

উদাহরণ

<?php
   class Car{
      static function getColor(){
         return "blue";
      }
   }
   echo (Car::getColor());
?>

আউটপুট:

blue

ব্যাখ্যা:

উদাহরণস্বরূপ, উপরের প্রোগ্রামে চিন্তা করুন কিছু প্রোগ্রামার একটি গাড়ি সম্পর্কে তথ্য তৈরি করছে এবং এতে আপনার একটি কার ক্লাস রয়েছে এবং একটি ফাংশন getColor() রয়েছে যা গাড়ির রঙ নির্ধারণ করে, তাই প্রতিটি বস্তুর জন্য getColor() ফাংশন প্রয়োজন ক্লাস কারের সমস্ত বস্তুর জন্য একই রঙ ফেরত দেয়, তাই এই ক্ষেত্রে আমরা getColor() পদ্ধতিটিকে স্ট্যাটিক হিসাবে তৈরি করতে পারি।

আসুন ইনস্ট্যান্স পদ্ধতি নিয়ে আলোচনা করি। একটি দৃষ্টান্ত পদ্ধতি ব্যবহার করা হয় যখন বস্তুটি তৈরি না করে পদ্ধতিটিকে কল করার কোন উপায় থাকে না। এছাড়াও প্রতিবার পদ্ধতিটি ক্লাসের বৈশিষ্ট্যগুলির সাথে ইন্টারঅ্যাক্ট করার জন্য আমাদের একটি উদাহরণ পদ্ধতির প্রয়োজন ছিল৷

উদাহরণ

আসুন একটি উদাহরণ সহ উপরের কেসটি প্রদর্শন করি:

<?php
   class Employee{
      private $empname;
      function setEmpname($empname) {
         $this->empname = $empname;
      }
      function getEmpname() {
         return $this -> empname;
      }
   }
   $obj = new Employee;
   $obj -> setEmpname("Alex");
   echo $obj -> getName();
?>

আউটপুট:

Alex

ব্যাখ্যা:

একটি কর্মচারী ক্লাস বিবেচনা করুন যেখানে setEmpname() কর্মচারীর নাম পড়ে এবং getEmpname() পদ্ধতি যা কর্মচারীর নাম ফেরত দেয়। এই ক্ষেত্রে, প্রতিটি কর্মচারীর নাম একে অপরের থেকে আলাদা তাই আমরা getEmpname() বা setEmploye() পদ্ধতিটিকে স্ট্যাটিক হিসাবে ঘোষণা করতে পারি না কারণ প্রতিবার এই পদ্ধতিগুলি একটি পরিবর্তনশীল "$empname" এর সাথে ইন্টারঅ্যাক্ট করে৷


  1. C# এ স্ট্যাটিক কনস্ট্রাক্টর এবং ইনস্ট্যান্স কনস্ট্রাক্টরের মধ্যে পার্থক্য

  2. C# এ স্ট্যাটিক বনাম নন-স্ট্যাটিক পদ্ধতি

  3. জাভাতে স্ট্যাটিক এবং নন-স্ট্যাটিক পদ্ধতির মধ্যে পার্থক্য

  4. জাভাতে স্ট্যাটিক বাইন্ডিং এবং ডাইনামিক বাইন্ডিং