Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> PHP

PHP टाइप जुगलिंग (Type Juggling) - स्वचालित प्रकार परिवर्तन


परिभाषा और उपयोग

PHP को डायनामिकली टाइप्ड भाषा के रूप में जाना जाता है। PHP में वेरिएबल की स्पष्ट प्रकार घोषणा न तो आवश्यक है और न ही समर्थित। C, C++ और Java के विपरीत, PHP वेरिएबल का प्रकार उस मान द्वारा तय होता है जो उसे असाइन किया गया है, न कि इसके विपरीत। इसके अलावा, जब किसी वेरिएबल को अलग प्रकार का मान असाइन किया जाता है, तो उसका प्रकार भी बदल जाता है। PHP का वेरिएबल के डायनामिकली बदलते मान से निपटने का यह दृष्टिकोण टाइप जुगलिंग (Type Juggling) कहलाता है।

$var = "Hello"; // वेरिएबल स्ट्रिंग प्रकार का है
$var = 100; // वही वेरिएबल अब int बन गया है

टाइप जुगलिंग अभिव्यक्ति की गणना के दौरान भी होता है। इस उदाहरण में, अंकों वाली एक स्ट्रिंग वेरिएबल स्वचालित रूप से जोड़ अभिव्यक्ति के मूल्यांकन के लिए पूर्णांक में परिवर्तित हो जाती है।

उदाहरण

उदाहरण 1: स्ट्रिंग का स्वचालित पूर्णांक में रूपांतरण

<?php 
$var1 = 100; 
$var2 = "100"; 
$var3 = $var1 + $var2; 
var_dump($var3); 
?>

आउटपुट

int(200)

उदाहरण 2: अग्रणी अंकों वाली स्ट्रिंग का व्यवहार

यदि कोई स्ट्रिंग अंकों से शुरू होती है, तो अनुगामी गैर-संख्यात्मक वर्ण (यदि कोई हों) गणना के दौरान नजरअंदाज कर दिए जाते हैं। हालांकि, PHP पार्सर एक नोटिस जारी करता है:

<?php 
$var1 = 100; 
$var2 = "100 days"; 
$var3 = $var1 + $var2; 
var_dump($var3); 
?>

आउटपुट

PHP Notice: A non well formed numeric value encountered in ... 
int(200)

टाइप कास्टिंग (Type Casting)

टाइप कास्टिंग किसी वेरिएबल को एक निश्चित प्रकार के रूप में उपयोग करने के लिए बाध्य करती है। निम्न स्क्रिप्ट विभिन्न टाइप कास्ट ऑपरेटरों का उदाहरण दिखाती है:

उदाहरण 3: विभिन्न टाइप कास्ट ऑपरेटर

<?php 
$var1 = 100; 
$var2 = (boolean)$var1; 
$var3 = (string)$var1; 
$var4 = (array)$var1; 
$var5 = (object)$var1; 
var_dump($var2, $var3, $var4, $var5); 
?>

आउटपुट

bool(true) 
string(3) "100" 
array(1) { 
    [0] => int(100) 
} 
object(stdClass)#1 (1) { 
    ["scalar"] => int(100) 
}

उदाहरण 4: स्ट्रिंग में कास्टिंग - दो तरीके

किसी वेरिएबल को स्ट्रिंग में कास्ट करना डबल-कोटेड स्ट्रिंग में संलग्न करके भी किया जा सकता है:

<?php 
$var1 = 100.50; 
$var2 = (string)$var1; 
$var3 = "$var1"; 
var_dump($var2, $var3); 
?>

आउटपुट

string(5) "100.5" 
string(5) "100.5"
  1. - PHP टैग्स (Tags) - कैननिकल, शॉर्ट और इको टैग

    परिभाषा और उपयोग एक PHP कोड स्क्रिप्ट एक टेक्स्ट फ़ाइल है जिसका एक्सटेंशन .php होता है और यह वेब सर्वर पर संग्रहीत होती है। सर्वर पर PHP पार्सर विशेष वर्ण अनुक्रम <?php और ?> की तलाश करता है। इन्हें PHP के प्रारंभिक और समापन टैग कहा जाता है। इन दोनों के भीतर के स्टेटमेंट पार्सर द्वारा व्याख्य

  1. - PHP टाइप ऑपरेटर्स (Type Operators) - instanceof ऑपरेटर

    परिचय PHP में, यह पता लगाना संभव है कि कोई दिया गया वेरिएबल किसी विशेष क्लास का ऑब्जेक्ट है या नहीं। इस उद्देश्य के लिए PHP में instanceof ऑपरेटर है। सिंटैक्स $var instanceof class यह ऑपरेटर बूलियन मान TRUE लौटाता है यदि $var क्लास का ऑब्जेक्ट है, अन्यथा यह FALSE लौटाता है। उदाहरण उदाहरण 1: उपयो

  1. - PHP pi() फ़ंक्शन - π मान प्राप्त करना

    PHP का pi() फ़ंक्शन गणितीय स्थिरांक **π (पाई)** का मान लौटाता है। यह M_PI स्थिरांक के समान मान (3.1415926535898) देता है। सिंटैक्स pi(): float पैरामीटर्स कोई पैरामीटर नहीं। लौटाया गया मान π का मान (फ्लोट)। M_PI स्थिरांक के बराबर। उदाहरण 1. वृत्त का क्षेत्रफल: πr² <?php $radius = 5; echo area