PHP-এ মান এবং টাইপ সমতা
ধরুন আপনি এমনভাবে তুলনা করতে চান যাতে
উদ্ধৃতির内的数字টি উদ্ধৃতি ছাড়া একই সংখ্যার
সমান না হয়। অন্য কথায়, আপনি এমনভাবে
তুলনা করতে চান যাতে তুলনা শুধুমাত্র
মানের উপরই নয়, ডেটা টাইপের উপরও হয়। এটি
করার জন্য, == অপারেটরের পরিবর্তে
=== অপারেটর ব্যবহার করা উচিত।
এই অপারেটর সহ তুলনাকে স্ট্রিক্ট
বলা হয়।
উদাহরণ দেখুন:
<?php
if ('3' === 3) {
echo '+++';
} else {
echo '---'; // এটি কার্যকর হবে, কারণ মান টাইপ অনুসারে সমান নয়
}
?>
কিন্তু দুটি স্ট্রিং '3' তুলনা করলে
স্ক্রিনে '+++' প্রদর্শিত হবে:
<?php
if ('3' === '3') {
echo '+++'; // এটি কার্যকর হবে
} else {
echo '---';
}
?>
ঠিক যেমন সংখ্যা তুলনা করার সময়:
<?php
if (3 === 3) {
echo '+++'; // এটি কার্যকর হবে
} else {
echo '---';
}
?>
দুটি অপারেটরের মধ্যে পার্থক্য ঠিক তখনই প্রকাশ পায় যখন মান একই হয়, কিন্তু ডেটা টাইপ ভিন্ন হয়। অন্যান্য ক্ষেত্রে এই অপারেটরগুলি একইভাবে কাজ করে। উদাহরণস্বরূপ, ভিন্ন সংখ্যা তুলনা করলে, অবশ্যই মাইনাস দেখানো হবে:
<?php
if (2 === 3) {
echo '+++';
} else {
echo '---'; // এটি কার্যকর হবে
}
?>
বর্তমানে PHP-তে সর্বত্র স্ট্রিক্ট তুলনা ব্যবহার করা সাধারণভাবে গৃহীত। বিশ্বাস করা হয় যে এই ক্ষেত্রে কোডটি ত্রুটির প্রতি কম সংবেদনশীল।
কোড রান না করে, নির্ধারণ করুন স্ক্রিনে কী প্রদর্শিত হবে:
<?php
$test1 = '3';
$test2 = '3';
if ($test1 == $test2) {
echo '+++';
} else {
echo '---';
}
?>
কোড রান না করে, নির্ধারণ করুন স্ক্রিনে কী প্রদর্শিত হবে:
<?php
$test1 = '3';
$test2 = '3';
if ($test1 === $test2) {
echo '+++';
} else {
echo '---';
}
?>
কোড রান না করে, নির্ধারণ করুন স্ক্রিনে কী প্রদর্শিত হবে:
<?php
$test1 = 3;
$test2 = '3';
if ($test1 == $test2) {
echo '+++';
} else {
echo '---';
}
?>
কোড রান না করে, নির্ধারণ করুন স্ক্রিনে কী প্রদর্শিত হবে:
<?php
$test1 = 3;
$test2 = '3';
if ($test1 === $test2) {
echo '+++';
} else {
echo '---';
}
?>
কোড রান না করে, নির্ধারণ করুন স্ক্রিনে কী প্রদর্শিত হবে:
<?php
$test1 = 3;
$test2 = 3;
if ($test1 === $test2) {
echo '+++';
} else {
echo '---';
}
?>