पीएचपी नंबर
इस अध्याय में हम इंटीजर, फ्लोट्स और नंबर स्ट्रिंग्स में गहराई से देखेंगे।
पीएचपी नंबर
PHP के बारे में ध्यान देने वाली एक बात यह है कि यह स्वचालित डेटा प्रकार रूपांतरण प्रदान करता है।
इसलिए, यदि आप किसी चर के लिए एक पूर्णांक मान निर्दिष्ट करते हैं, तो उस चर का प्रकार स्वचालित रूप से एक पूर्णांक होगा। फिर, यदि आप एक ही चर के लिए एक स्ट्रिंग निर्दिष्ट करते हैं, तो प्रकार एक स्ट्रिंग में बदल जाएगा।
यह स्वचालित रूपांतरण कभी-कभी आपके कोड को तोड़ सकता है।
पीएचपी पूर्णांक
2, 256, -256, 10358, -179567 सभी पूर्णांक हैं।
एक पूर्णांक बिना किसी दशमलव भाग के एक संख्या है।
एक पूर्णांक डेटा प्रकार 32 बिट सिस्टम में -2147483648 और 2147483647 के बीच और 64 बिट सिस्टम में -9223372036854775808 और 9223372036854775807 के बीच एक गैर-दशमलव संख्या है। इससे अधिक (या कम) मान को फ्लोट के रूप में संग्रहीत किया जाएगा, क्योंकि यह एक पूर्णांक की सीमा से अधिक है।
नोट: जानने के लिए एक और महत्वपूर्ण बात यह है कि भले ही 4 * 2.5 10 हो, परिणाम फ्लोट के रूप में संग्रहीत किया जाता है, क्योंकि ऑपरेंड में से एक फ्लोट (2.5) होता है।
यहाँ पूर्णांकों के लिए कुछ नियम दिए गए हैं:
- एक पूर्णांक में कम से कम एक अंक होना चाहिए
- एक पूर्णांक में दशमलव बिंदु नहीं होना चाहिए
- एक पूर्णांक या तो धनात्मक या ऋणात्मक हो सकता है
- पूर्णांकों को तीन प्रारूपों में निर्दिष्ट किया जा सकता है: दशमलव (10-आधारित), हेक्साडेसिमल (16-आधारित - 0x के साथ उपसर्ग) या अष्टक (8-आधारित - 0 के साथ उपसर्ग)
PHP में पूर्णांकों के लिए निम्नलिखित पूर्वनिर्धारित स्थिरांक हैं:
- PHP_INT_MAX - सबसे बड़ा पूर्णांक समर्थित
- PHP_INT_MIN - सबसे छोटा पूर्णांक समर्थित
- PHP_INT_SIZE - बाइट्स में एक पूर्णांक का आकार
PHP में यह जांचने के लिए निम्नलिखित कार्य हैं कि चर का प्रकार पूर्णांक है या नहीं:
- is_int ()
- is_integer () - is_int का उपनाम ()
- is_long () - is_int का उपनाम ()
उदाहरण
जांचें कि चर का प्रकार पूर्णांक है या नहीं:
<?php
$x = 5985;
var_dump(is_int($x));
$x = 59.85;
var_dump(is_int($x));
?>
पीएचपी फ्लोट्स
एक फ्लोट एक दशमलव बिंदु या घातीय रूप में एक संख्या के साथ एक संख्या है।
2.0, 256.4, 10.358, 7.64E+5, 5.56E-5 सभी फ्लोट हैं।
फ्लोट डेटा प्रकार आमतौर पर 1.7976931348623ई+308 (प्लेटफ़ॉर्म पर निर्भर) तक के मान को स्टोर कर सकता है, और इसकी अधिकतम सटीकता 14 अंकों की हो सकती है।
PHP में फ़्लोट्स के लिए निम्नलिखित पूर्वनिर्धारित स्थिरांक हैं (PHP 7.2 से):
- PHP_FLOAT_MAX - सबसे बड़ा प्रतिनिधित्व योग्य फ़्लोटिंग पॉइंट नंबर
- PHP_FLOAT_MIN - सबसे छोटा प्रतिनिधित्व योग्य सकारात्मक फ़्लोटिंग पॉइंट नंबर
- - PHP_FLOAT_MAX - सबसे छोटा प्रतिनिधित्व योग्य ऋणात्मक फ़्लोटिंग पॉइंट नंबर
- PHP_FLOAT_DIG - दशमलव अंकों की संख्या जिन्हें सटीक हानि के बिना फ्लोट और बैक में गोल किया जा सकता है
- PHP_FLOAT_EPSILON - सबसे छोटी प्रतिनिधित्व योग्य सकारात्मक संख्या x, ताकि x + 1.0! = 1.0
PHP में यह जांचने के लिए निम्नलिखित कार्य हैं कि चर का प्रकार फ्लोट है या नहीं:
- is_float ()
- is_double () - is_float का उपनाम ()
उदाहरण
जांचें कि क्या चर का प्रकार फ्लोट है:
<?php
$x = 10.365;
var_dump(is_float($x));
?>
पीएचपी इन्फिनिटी
एक संख्यात्मक मान जो PHP_FLOAT_MAX से बड़ा होता है उसे अनंत माना जाता है।
PHP में यह जांचने के लिए निम्नलिखित कार्य हैं कि कोई संख्यात्मक मान सीमित है या अनंत:
हालांकि, PHP var_dump() फ़ंक्शन डेटा प्रकार और मान देता है:
उदाहरण
जांचें कि कोई संख्यात्मक मान सीमित है या अनंत:
<?php
$x = 1.9e411;
var_dump($x);
?>
पीएचपी NaN
NaN का मतलब नॉट ए नंबर है।
असंभव गणितीय कार्यों के लिए NaN का उपयोग किया जाता है।
PHP में यह जाँचने के लिए निम्नलिखित कार्य हैं कि क्या कोई मान एक संख्या नहीं है:
हालांकि, PHP var_dump() फ़ंक्शन डेटा प्रकार और मान देता है:
उदाहरण
अमान्य गणना एक NaN मान लौटाएगी:
<?php
$x = acos(8);
var_dump($x);
?>
पीएचपी न्यूमेरिकल स्ट्रिंग्स
PHP is_numeric() फ़ंक्शन का उपयोग यह पता लगाने के लिए किया जा सकता है कि कोई चर संख्यात्मक है या नहीं। यदि चर एक संख्या या एक संख्यात्मक स्ट्रिंग है, तो फ़ंक्शन सही है, अन्यथा गलत है।
उदाहरण
जांचें कि क्या चर संख्यात्मक है:
<?php
$x = 5985;
var_dump(is_numeric($x));
$x = "5985";
var_dump(is_numeric($x));
$x = "59.85" + 100;
var_dump(is_numeric($x));
$x = "Hello";
var_dump(is_numeric($x));
?>
नोट: PHP 7.0 से: is_numeric() फ़ंक्शन हेक्साडेसिमल रूप में संख्यात्मक स्ट्रिंग्स के लिए FALSE लौटाएगा (उदाहरण के लिए 0xf4c3b00c), क्योंकि उन्हें अब संख्यात्मक स्ट्रिंग्स के रूप में नहीं माना जाता है।
PHP कास्टिंग स्ट्रिंग्स और फ्लोट्स टू इंटीजर
कभी-कभी आपको एक संख्यात्मक मान को किसी अन्य डेटा प्रकार में डालने की आवश्यकता होती है।
(इंट), (पूर्णांक), या अंतराल () फ़ंक्शन का उपयोग अक्सर किसी मान को पूर्णांक में बदलने के लिए किया जाता है।
उदाहरण
फ्लोट और स्ट्रिंग को पूर्णांक में कास्ट करें:
<?php
// Cast float to int
$x = 23465.768;
$int_cast = (int)$x;
echo $int_cast;
echo "<br>";
// Cast string to int
$x =
"23465.768";
$int_cast = (int)$x;
echo $int_cast;
?>