এখানে অন্যান্য সমাধানগুলির সকলের মধ্যে সতর্কতা রয়েছে (যদিও তারা প্রশ্নটিতে হাতের মুঠোয় রয়েছে)। আপনি যদি (1) মিশ্র প্রকারের চেয়ে বেশি লুপিং করেন বা (2) এমন একটি জেনেরিক সমাধান চান যা আপনি একটি ফাংশন হিসাবে রফতানি করতে পারেন বা আপনার ইউটিলিটিগুলিতে অন্তর্ভুক্ত করতে পারেন তবে এখানে অন্য সমাধানগুলির কোনওটিই কাজ করবে না।
সবচেয়ে সহজ এবং সবচেয়ে স্ব-ব্যাখ্যামূলক সমাধানটি হ'ল:
// simplest, most-readable
if (is_bool($res) {
$res = $res ? 'true' : 'false';
}
// same as above but written more tersely
$res = is_bool($res) ? ($res ? 'true' : 'false') : $res;
// Terser still, but completely unnecessary function call and must be
// commented due to poor readability. What is var_export? What is its
// second arg? Why are we exporting stuff?
$res = is_bool($res) ? var_export($res, 1) : $res;
তবে বেশিরভাগ বিকাশকারী আপনার কোডটি পড়ার জন্য http://php.net/var_export এ ভ্রমণের প্রয়োজন var_export
এবং কী করবে এবং দ্বিতীয় পরম কী তা বুঝতে understand
1। var_export
boolean
ইনপুট জন্য কাজ করে কিন্তু অন্য সব কিছুকে string
পাশাপাশি রূপান্তর করে ।
// OK
var_export(false, 1); // 'false'
// OK
var_export(true, 1); // 'true'
// NOT OK
var_export('', 1); // '\'\''
// NOT OK
var_export(1, 1); // '1'
2। ($res) ? 'true' : 'false';
বুলিয়ান ইনপুটটির জন্য কাজ করে তবে অন্য সমস্ত কিছু (ইনটস, স্ট্রিং) সত্য / মিথ্যাতে রূপান্তর করে।
// OK
true ? 'true' : 'false' // 'true'
// OK
false ? 'true' : 'false' // 'false'
// NOT OK
'' ? 'true' : 'false' // 'false'
// NOT OK
0 ? 'true' : 'false' // 'false'
3। json_encode()
একই সমস্যা var_export
এবং সম্ভবত সবচেয়ে খারাপ যেহেতু json_encode
এটি স্ট্রিংটি true
স্ট্রিং বা বুলিয়ান উদ্দেশ্য ছিল কিনা তা জানতে পারে না ।