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

PHP में ऑब्जेक्ट को किसी ऐरे में कनवर्ट करें।

एक PHP एप्लिकेशन में, हम डेटा के साथ स्ट्रिंग, ऐरे, ऑब्जेक्ट्स या अधिक जैसे विभिन्न स्वरूपों में काम कर रहे हैं ... रीयल-टाइम एप्लिकेशन में, हमें प्राप्त करने के लिए एक सहयोगी सरणी के रूप में एक PHP ऑब्जेक्ट परिणाम पढ़ने की आवश्यकता हो सकती है वांछित आउटपुट।

इसलिए हम यहां चर्चा करेंगे कि PHP में किसी php ऑब्जेक्ट को साहचर्य सरणी में कैसे बदला जाए।

आइए बताते हैं कि PHP में ऑब्जेक्ट और साहचर्य सरणी क्या है? एक वस्तु एक वर्ग का एक उदाहरण है जिसका अर्थ है कि एक वर्ग से आप कई वस्तुएँ बना सकते हैं। यह केवल एक वर्ग का एक नमूना है और इसमें स्मृति आवंटित की गई है। जबकि दूसरी ओर एक सरणी जिसमें एक सूचकांक के रूप में स्ट्रिंग होती है, सहयोगी सरणी कहलाती है। इसमें एक की-वैल्यू पेयर होता है, जिसमें वैल्यू अपनी-अपनी चाबियों से जुड़े होते हैं।

आइए अब वस्तु को एक सरणी में बदलने के विभिन्न तरीकों पर चर्चा करें।

विधि1:

json_decode और json_encode तकनीक का उपयोग करना:

प्रारंभ में json_encode() फ़ंक्शन किसी दिए गए मान के लिए JSON एन्कोडेड स्ट्रिंग देता है। json_decode() फ़ंक्शन इसके ऊपर एक PHP सरणी में बदल जाता है।

उदाहरण:

<?php
   class student {
      public function __construct($firstname, $lastname) {
         $this->firstname = $firstname;
         $this->lastname = $lastname;
      }
   }
   $myObj = new student("Alex", "Stokes");
   echo "Before conversion:".'</br>';
   var_dump($myObj);
   $myArray = json_decode(json_encode($myObj), true);
   echo "After conversion:".'</br>';
   var_dump($myArray);
?>

आउटपुट:

Before conversion:
object(student)#1 (2) { ["firstname"]=> string(4) "Alex" ["lastname"]=> string(6) "Stokes" }
After conversion:
array(2) { ["firstname"]=> string(4) "Alex" ["lastname"]=> string(6) "Stokes" }

स्पष्टीकरण:

यहां हमने एक कक्षा का छात्र बनाया है और उस कक्षा के अंदर, हमने एक __construct() फ़ंक्शन घोषित किया है, जिसे ऑब्जेक्ट बनने पर निष्पादित किया जाता है। कंस्ट्रक्टर को तर्क प्राप्त होते हैं जो बाद में नए कीवर्ड की मदद से ऑब्जेक्ट बनाते समय प्रदान किए जाते हैं। पहले var_dump() एक्सप्रेशन में हम ऑब्जेक्ट को प्रिंट कर रहे हैं, लेकिन दूसरे मामले में, हम ऑब्जेक्ट को json_decode और json_encode तकनीक की मदद से एक ऐरे में कनवर्ट कर रहे हैं।

विधि 2:

टाइपकास्टिंग तकनीक से किसी ऑब्जेक्ट को ऐरे में कनवर्ट करना:

टाइपकास्टिंग एक डेटा प्रकार चर को विभिन्न डेटा प्रकारों में उपयोग करने का दृष्टिकोण है और यह केवल डेटाटाइप का सटीक परिवर्तन है।

<?php
   class bag {
      public function __construct( $item1, $item2, $item3){
         $this->item1 = $item1;
         $this->item2 =$item2;
         $this->item3 = $item3;
      }
   }
   $myBag = new bag("Books", "Ball", "Pens");
   echo "Before conversion :".'</br>';
   var_dump($myBag);
   $myBagArray = (array)$myBag;
   echo "After conversion :".'</br>';
   var_dump($myBagArray);
?>

आउटपुट:

Before conversion :
object(bag)#1 (3) { ["item1"]=> string(5) "Books" ["item2"]=> string(4) "Ball" ["item3"]=> string(4) "Pens" }
After conversion:
array(3) { ["item1"]=> string(5) "Books" ["item2"]=> string(4) "Ball" ["item3"]=> string(4) "Pens" }

स्पष्टीकरण:

यहां हमने एक वर्ग "बैग" बनाया है और उस वर्ग के अंदर, हमने एक __construct() फ़ंक्शन घोषित किया है, जिसे ऑब्जेक्ट बनने पर निष्पादित किया जाता है। कंस्ट्रक्टर को तर्क प्राप्त होते हैं जो बाद में नए कीवर्ड की मदद से ऑब्जेक्ट बनाते समय प्रदान किए जाते हैं। पहले var_dump() एक्सप्रेशन में, हम केवल ऑब्जेक्ट को प्रिंट कर रहे हैं, लेकिन दूसरे मामले में, हम टाइप-हिंटिंग प्रक्रिया की मदद से ऑब्जेक्ट को एक ऐरे में टाइप-हिंट कर रहे हैं।


  1. PHP में XML फाइल को ऐरे में कैसे बदलें?

    XML दस्तावेज़ को PHP सरणी में बदलने के लिए, हमें कुछ PHP फ़ंक्शन का उपयोग करना होगा। प्रक्रिया को एक उदाहरण के साथ नीचे समझाया गया है। चरण 1 हमें एक एक्सएमएल फाइल बनानी है जिसे ऐरे में बदलने की जरूरत है। abc.xml <?xml version='1.0'?> <userdb>    <firstname name='

  1. PHP में सरणी () फ़ंक्शन

    PHP में array() फंक्शन एक array बनाता है। PHP में Array तीन प्रकार की होती है। अनुक्रमित सरणियाँ - यह संख्यात्मक सूचकांक के साथ एक सरणी है सहयोगी सरणियाँ - यह नामित कुंजियों वाली एक सरणी है बहुआयामी सरणियाँ − यह एक सरणी है जिसमें एक या अधिक सरणियाँ होती हैं सिंटैक्स // array with numeric

  1. बाइट सरणी को सी # में ऑब्जेक्ट स्ट्रीम में कैसे परिवर्तित करें?

    स्ट्रीम सभी धाराओं का सार आधार वर्ग है और यह बाइट्स के अनुक्रम का एक सामान्य दृश्य प्रदान करता है। स्ट्रीम्स ऑब्जेक्ट में तीन मूलभूत संचालन शामिल हैं जैसे पढ़ना, लिखना और तलाश करना। एक स्ट्रीम को रीसेट किया जा सकता है जिससे प्रदर्शन में सुधार होता है। एक बाइट सरणी को मेमोरी स्ट्रीम . में बदला जा सक