আমার কাছে কোডের নীচের অংশ রয়েছে:
$item['price'] = 0;
/* Code to get item information goes in here */
if($item['price'] == 'e') {
$item['price'] = -1;
}
এটি আইটেমের দাম 0 থেকে আরম্ভ করার এবং তারপরে এটি সম্পর্কে তথ্য পাওয়ার উদ্দেশ্য। যদি দামটি 'ই' হিসাবে অবহিত করা হয় তবে এর অর্থ বিক্রয়ের পরিবর্তে বিনিময়, যা একটি নেতিবাচক সংখ্যা হিসাবে একটি ডাটাবেসে সংরক্ষণ করা হয়।
0 হিসাবে দামটি ছাড়ারও সম্ভাবনা রয়েছে, হয় আইটেমটি বোনাস হওয়ায় বা পরে কোনও মুহুর্তে দাম নির্ধারণ করা হবে।
তবে, যখনই দাম সেট করা হয় না, যা এটি 0 এর প্রাথমিক মান দিয়ে ছেড়ে যায়, if
উপরে উল্লিখিত লুপটি সত্য হিসাবে মূল্যায়ন করে এবং দামটি -1 এ সেট করা হয়। এটি 0 কে 'ই' এর সমান বলে মনে করে।
কিভাবে এই ব্যাখ্যা করা যেতে পারে?
যখন দাম 0 হিসাবে দেওয়া হয় (আরম্ভের পরে), আচরণটি ত্রুটিযুক্ত: কখনও কখনও যদি সত্য হিসাবে মূল্যায়ন করা হয়, কখনও কখনও এটি মিথ্যা হিসাবে মূল্যায়ন করে *
if((string)$item['price'] == 'e')
বিজোড় আচরণ স্থির করে। আরও তথ্যের জন্য স্ট্যাকওভারফ্লো.com/a/48912540/1579327 দেখুন