PHP 7-এ অ্যানোনিমাস ক্লাস new class ব্যবহার করে ডিফাইন করা যায়। এটি পূর্ণ ক্লাস ডেফিনিশনের পরিবর্তে ব্যবহার করা যায়। কেন অ্যানোনিমাস ক্লাস ব্যবহার করবেন?
- মকিং টেস্ট সহজ।
- ইন্টারফেসের জন্য ডাইনামিক ইমপ্লিমেন্টেশন সহজে তৈরি করা যায়, যাতে কমপ্লেক্স মকিং API এড়ানো যায়।
- সেগুলো সেখানে প্লেস করা যায় যেখানে সেগুলো ডিফাইন করা হয়েছে।
- সিম্পল ইমপ্লিমেন্টেশনের জন্য অটোলোডার ব্যবহার এড়ানো যায়।
উদাহরণ
নিচে একটি কোড নমুনা দেওয়া হলো:
<?php interface a_logger { public function log(string $msg); } class App { private $logger; public function getLogger(): a_logger { return $this->logger; } public function setLogger(a_logger $logger) { $this->logger = $logger; } } $app = new App; $app->setLogger(new class implements a_logger { public function log(string $msg) { print($msg); } }); $app->getLogger()->log("This has created an anonymous class"); ?>আউটপুট
এটি নিচের ফলাফলটি উত্পন্ন করবে:
This has created an anonymous class