PHP5 এর isset() এবং ternary অপারেটরের পরিবর্তে PHP7 এর সহজতর সমাধান

Null Coalescing Operator (Null Coalescing Operator) - পিএইচপি (PHP 7) - Computer Programming

252

PHP 7 এ, isset() এবং ternary অপারেটর এর তুলনায় আরও কিছু উন্নত এবং সহজ সমাধান সরবরাহ করা হয়েছে, যা কোডের গুণগত মান উন্নত করতে সাহায্য করে। PHP 7-এ নতুন ফিচারগুলি Null Coalescing Operator (??) এবং Nullsafe Operator (?->) সহ টাইপ ডিক্লারেশন সুবিধা দেয়।

১. Null Coalescing Operator (??)

PHP 7 এ Null Coalescing Operator (??) যোগ করা হয়েছে, যা isset() এবং ternary অপারেটরের সমাধান হিসাবে ব্যবহৃত হয়। এটি একটি খুব সাধারণ এবং শক্তিশালী অপারেটর, যা একটি মান চেক করে এবং যদি সেটি null হয়, তবে একটি ডিফল্ট মান প্রদান করে।

Null Coalescing Operator (??) এর ব্যবহার

isset() + ternary অপারেটরের সমাধান:

<?php
$value = isset($someVariable) ? $someVariable : 'default_value';
echo $value;
?>

এখানে, যদি $someVariable সেট না থাকে বা null হয়, তাহলে 'default_value' প্রদান করা হবে।

Null Coalescing Operator (??) ব্যবহার:

<?php
$value = $someVariable ?? 'default_value';
echo $value;
?>

এখানে, $someVariable যদি null অথবা নির্ধারিত না থাকে, তবে 'default_value' সেট করা হবে। এটি isset() এবং ternary অপারেটরের তুলনায় আরও সংক্ষিপ্ত এবং পরিষ্কার কোড প্রদান করে।

Null Coalescing Operator এর সুবিধা

  1. কম কোড: isset() এবং ternary অপারেটরের তুলনায় এটি কোডকে সংক্ষিপ্ত এবং পরিষ্কার করে।
  2. সহজ এবং দ্রুত: ?? অপারেটরটি মানের অস্তিত্ব যাচাই এবং ডিফল্ট মান নির্ধারণ করতে দ্রুত এবং সহজভাবে কাজ করে।
  3. কোনও null চেকিং বা ফাংশন কলের প্রয়োজন নেই: এটি শুধু null চেক করে, তাই এটি আরও দ্রুত এবং কম ঝামেলা তৈরির সুযোগ দেয়।

২. Nullsafe Operator (?->) (PHP 8)

PHP 8 এ Nullsafe Operator (?->) যোগ করা হয়েছে, যা অবজেক্টে কোনো প্রপার্টি বা মেথড কলের সময় null চেক করতে সাহায্য করে। এই অপারেটরটি অবজেক্ট পদ্ধতির বা প্রপার্টির অ্যাক্সেসের সময় যদি অবজেক্ট null হয়, তবে এটি null রিটার্ন করবে, ত্রুটি সৃষ্টি করবে না।

Nullsafe Operator (?->) এর ব্যবহার

সাধারণভাবে অবজেক্টের প্রপার্টি অ্যাক্সেস:

<?php
$user = getUser();  // যদি এটি null না হয়
echo $user->name;
?>

এখানে, যদি getUser() null রিটার্ন করে, তবে কোডটি Fatal error তৈরি করবে।

Nullsafe Operator (?->) ব্যবহার:

<?php
$user = getUser();  // যদি এটি null হয়, কোডটি ত্রুটি সৃষ্টি করবে না
echo $user?->name;
?>

এখানে, যদি $user null হয়, তবে name প্রপার্টি অ্যাক্সেস না করেও কোডটি ত্রুটি সৃষ্টি করবে না এবং এটি null রিটার্ন করবে।

Nullsafe Operator এর সুবিধা

  1. কোনো ত্রুটি সৃষ্টি হয় না: null চেক করার জন্য এই অপারেটরটি ব্যবহার করলে null অবজেক্টে অ্যাক্সেস করার সময় ত্রুটি তৈরি হয় না।
  2. অবজেক্টের মাধ্যমে সহজভাবে কাজ করা: এটি কোডের readability এবং পারফরমেন্স উন্নত করে, কারণ এটি অবজেক্ট অ্যাক্সেসে আরও সংক্ষিপ্ত এবং নিরাপদ পদ্ধতি প্রদান করে।
  3. কোনো অতিরিক্ত চেকিং বা isset() ব্যবহার নেই: isset() বা অন্যান্য চেকিং ফাংশনগুলির প্রয়োজন পড়ে না, যার ফলে কোড কমপ্যাক্ট এবং পরিষ্কার হয়।

সারসংক্ষেপ

PHP 7 এবং PHP 8-এ Null Coalescing Operator (??) এবং Nullsafe Operator (?->) প্রদান করা হয়েছে, যা কোডের সরলতা এবং নিরাপত্তা বাড়ায়। এগুলি isset() এবং ternary অপারেটরের তুলনায় কোডকে আরও পরিষ্কার, দ্রুত এবং ত্রুটিমুক্ত করে তোলে:

  1. Null Coalescing Operator (??) - এটি isset() এবং ternary অপারেটরের সহজতর সমাধান।
  2. Nullsafe Operator (?->) - এটি PHP 8 এর একটি বৈশিষ্ট্য যা অবজেক্ট অ্যাক্সেসের সময় null চেক করার জন্য ব্যবহৃত হয় এবং ত্রুটি সৃষ্টি না করে null রিটার্ন করে।

এই দুটি অপারেটর কোডের সুষমতা এবং নিরাপত্তা বাড়াতে গুরুত্বপূর্ণ ভূমিকা পালন করে।

Content added By
Promotion

Are you sure to start over?

Loading...