जब हम PHP 8 में एक न्यूमेरिक की तुलना करते हैं, तो यह नंबर तुलना का उपयोग करेगा। अन्यथा यह नंबर को स्ट्रिंग में परिवर्तित करेगा और स्ट्रिंग तुलना का उपयोग करेगा।
स्ट्रिंग को तीन तरीकों से वर्गीकृत किया जा सकता है:
एक स्ट्रिंग जिसमें केवल न्यूमेरिक हो। उदाहरण: 1234 या 1.24e1।
एक लीडिंग-न्यूमेरिक स्ट्रिंग - एक लीडिंग स्ट्रिंग एक न्यूमेरिक स्ट्रिंग से शुरू होती है लेकिन इसके बाद नॉन-न्यूमेरिक कैरेक्टर्स होने चाहिए जिनमें व्हाइटस्पेस शामिल है। उदाहरण: 12xyz या "123"
नॉन-न्यूमेरिक स्ट्रिंग - वह स्ट्रिंग जो न्यूमेरिक नहीं हो सकती और न ही लीडिंग-न्यूमेरिक स्ट्रिंग।
उदाहरण - PHP 7
0=='foo' // PHP 7 true लौटाएगा।
उदाहरण - PHP 8
0 =='foo' // PHP 8 false लौटाएगा।
उदाहरण - PHP 8 प्रोग्राम सनर स्ट्रिंग टू नंबर तुलना का उपयोग करके
<?php
$x=[
"1" => "first Integer",
"0123" =>"The integer index with leading 0",
"12str" =>"using leading numeric string",
" 1" => "using leading whitespace",
"2.2" => "using floating number",
];
print_r($x);
?>
आउटपुट
Array (
[1] => first Integer
[0123] => The integer index with leading 0
[12str] => using leading numeric string
[ 1] => using leading whitespace
[2.2] => using floating number
)