PHP Conversion Functions: विभिन्न प्रकार के Casting Functions के अलावा PHP हमें चार ऐसे Functions अलग से Provide करता है, जिनका प्रयोग करके हम किसी मान को एक Type से दूसरे Type में Convert कर सकते हैं। ये Conversion Functions निम्नानुसार हैं।
floatval() Function
ये Function एक Mixed Type का Argument Accept करता है और उस Argument की Floating Point Value Return करता है। Argument के रूप में हम इस Function में किसी भी तरह के मान को Parameter के रूप में Pass कर सकते हैं।
लेकिन Parameter के रूप में हमें Object को Pass नहीं करना चाहिए, क्योंकि किसी Object को Floating Point Value में Concert करने का कोई मतलब नहीं होता।
यदि हम इस Function में किसी Object को Parameter के रूप में Pass करते हैं, तो ये Function E_NOTICE Level का Error देते हुए 1 Return करता है।
जबकि यदि हम इस Function में Parameter के रूप में Empty Array Pass करते हैं, तो ये Function 0 Return करता है जबकि Non-Empty Array के लिए ये Function 1 Return करता है।
इस Function को हम विभिन्न प्रकार के Data Types के साथ निम्नानुसार उपयोग में ले सकते हैं:
<?php
echo "\n". floatval(42); // 42
echo "\n". floatval(4.2); // 4.2
echo "\n". floatval('42'); // 42
echo "\n". floatval('+42'); // 42
echo "\n". floatval('-42'); // -42
echo "\n". floatval(042); // 34
echo "\n". floatval('042'); // 42
echo "\n". floatval(1e10); // 10000000000
echo "\n". floatval('1e10'); // 10000000000
echo "\n". floatval(0x1A); // 26
echo "\n". floatval(42000000); // 42000000
echo "\n". floatval(420000000000000000000); // 4.2E+20
echo "\n". floatval('420000000000000000000'); // 4.2E+20
echo "\n". floatval(array()); // 0
echo "\n". floatval(array('foo', 'bar')); // 1
?>
doubleval() Function
ये Function एक floatval() Function का ही Alias है। यानी हम doubleval() व floatval() दोनों Functions को एक दूसरे के स्थान पर Alternative के रूप में उपयोग में ले सकते हैं।
intval() Function
ये Function दो Arguments Accept करता है, जिसमें पहला Argument एक Mixed Type का Argument होता है जिसकी ये Function Integer Value Return करता है। दूसरे Argument के रूप में हम इस बात को Specify करते हैं कि Conversion के दौरान पहले Argument की Value का Base क्या माना जाएगा।
यदि हम दूसरे Argument के रूप में 2 Specify करें, तो ये Function पहले Argument की Value को Binary के आधार पर Calculate करेगा, 8 Specify करने पर Octal के आधार पर व 16 Specify करने पर Hexadecimal के आधार पर Calculate करेगा। जबकि Default रूप से Base का मान 10 होता है।
लेकिन Parameter के रूप में हमें Object को Pass नहीं करना चाहिए, क्योंकि किसी Object को Floating Point Value में Concert करने का कोई मतलब नहीं होता।
यदि हम इस Function में किसी Object को Parameter के रूप में Pass करते हैं, तो ये Function E_NOTICE Level का Error देते हुए 1 Return करता है।
जबकि यदि हम इस Function में Parameter के रूप में Empty Array Pass करते हैं, तो ये Function 0 Return करता है जबकि Non-Empty Array के लिए ये Function 1 Return करता है।
जब हम किसी String को पहले Argument के रूप में Specify करते हैं, तो String के Left Most Side के पहले Character के आधार पर या तो ये Function उस String की Value को Numerical Value में Convert करता है या फिर यदि पहला Character कोई Numerical Digit न हो, तो 0 Return करता है।
इस Function को विभिन्न प्रकार के Data Types के साथ Use करते हुए हम निम्नानुसार एक Program बना सकते हैं और इस Function के विभिन्न Data Types के मानों के साथ के व्यवहार को समझ सकते हैं:
<?php
echo "\n". intval(42); // 42
echo "\n". intval(4.2); // 4
echo "\n". intval('42'); // 42
echo "\n". intval('+42'); // 42
echo "\n". intval('-42'); // -42
echo "\n". intval(042); // 34
echo "\n". intval('042'); // 42
echo "\n". intval(1e10); // 1410065408
echo "\n". intval('1e10'); // 1
echo "\n". intval(0x1A); // 26
echo "\n". intval(42000000); // 42000000
echo "\n". intval(420000000000000000000); // 0
echo "\n". intval('420000000000000000000'); // 2147483647
echo "\n". intval(42, 16); // 42
echo "\n". intval('42', 16); // 66
echo "\n". intval(42, 8); // 42
echo "\n". intval('42', 8); // 34
echo "\n". intval('10101100', 2); // 172
echo "\n". intval(10101100, 2); // 10101100
echo "\n". intval(array()); // 0
echo "\n". intval(array('foo', 'bar')); // 1
?>
strval() Function
ये Function भी Mixed Type का एक Argument Accept करता है और उस Argument का String Representation Return करता है।
किसी Data Type को String Representation में Convert करने के लिए PHP जितने भी तरह के सम्भव होते हैं, उतने तरह के सभी जरूरी Type Casting Perform करते हुए Finally Argument के String Representation को Return करता है।
ये Function Return होने वाली String पर किसी तरह की कोई Formatting Apply नहीं करता।
इस Function में हम किसी भी Scalar Type के मान अथवा उस Object को Parameter के रूप में Pass कर सकते हैं, जिसमें __toString() Magic Method को Define किया गया हो।
इस Function में Parameter के रूप में हम किसी Array या उस Object को Pass नहीं कर सकते, जिसमें __toString() Magic Method को Define न किया गया हो।
इस Function को विभिन्न प्रकार के मानों के साथ Use करते हुए हम निम्नानुसार एक Program बना सकते हैं व इस Function के विभिन्न प्रकार के मानों पर होने वाले Conversion Effect को देख सकते हैं:
<?php
class Demo{
public function __toString(){
return __CLASS__;
}
}
echo "\n". strval(42); // 42
echo "\n". strval(4.2); // 4.2
echo "\n". strval('42'); // 42
echo "\n". strval('+42'); // 42
echo "\n". strval('-42'); // -42
echo "\n". strval(042); // 34
echo "\n". strval('042'); // 042
echo "\n". strval(1e10); // 10000000000
echo "\n". strval('1e10'); // 1e10
echo "\n". strval(0x1A); // 26
echo "\n". strval(42000000); // 42000000
echo "\n". strval(420000000000000000000); // 4.2E+20
echo "\n". strval('420000000000000000000'); // 420000000000000000000
echo "\n". strval(new Demo); // Demo
?>
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook PHP in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी।
PHP in Hindi | Page: 647 | Format: PDF
