
PHP 8.0 এর Null-Safe Operator ?-> ও Error Suppression @ — কোথায় কী ব্যবহার করবেন?
✨ ভূমিকা
ডেভেলপমেন্টে প্রায়ই এমন পরিস্থিতির মুখোমুখি হই যেখানে একটি অবজেক্ট null হতে পারে। ধরুন, আপনি এমন একটি কোড লিখলেন যেখানে একটি user object থেকে কিছু তথ্য নিতে হবে, কিন্তু সেই user null ও হতে পারে। তাহলে কী হবে?
আগে এর জন্য if ব্যবহার করতে হতো, অথবা @ দিয়ে error চেপে যেতাম। কিন্তু PHP 8.0 থেকে এসেছে একটি অসাধারণ সমাধান — null-safe operator ?-।
আজ আমরা আলোচনা করব এই ?- এবং @ এর ব্যবহার, পার্থক্য এবং ভালো practice।
🚫 আগে কী হতো? (PHP 7.4 এবং নিচে)
$user = null; echo $user-name;
ফলাফল:
Fatal error: Trying to get property 'name' of non-object
এর সমাধানে আমরা লিখতাম:
if ($user !== null) { echo $user-name; }
অথবা অনেকেই করতেন:
echo @$user-name; // error চাপা পড়ে যাবে
কিন্তু @ ব্যবহার করা ঠিক নয়, কারণ এটি error গোপন করে, debugging কঠিন করে তোলে।
✅ PHP 8.0+ এ Null-Safe Operator ?-
নতুন ?- অপারেটর দিয়ে কোডটা খুব সহজ ও ক্লিন হয়:
echo $user?-name;
এখানে:
-
যদি $user null হয়, তাহলে এটি null return করবে
-
কোনো warning বা fatal error দিবে না
🔐 উপসংহার
নতুন PHP ভার্সনগুলোর সুবিধা নিয়ে আমাদের কোডকে আরও নিরাপদ ও ক্লিন করা এখন সম্ভব। ?- null-safe operator দিয়ে আমরা error ছাড়াই null ভ্যারিয়েবল হ্যান্ডল করতে পারি, যেখানে আগে @ ব্যবহার করতে হতো।
এখন সময় এসেছে @ ভুলে গিয়ে Laravel এর modern best practice গুলো অনুসরণ করার।
✍️ লেখা ভালো লেগেছে? শেয়ার করুন, আর আরও শেখার জন্য যুক্ত থাকুন CLIT Academy’র সাথে।
👉 clitacademy.com