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

PHP ऑब्जेक्ट्स की तुलना: == और === ऑपरेटर्स


परिचय

PHP दो ऑब्जेक्ट वेरिएबल्स की तुलना के लिए दो ऑपरेटर्स प्रदान करता है:

  • == (समानता) - true लौटाता है यदि दोनों ऑब्जेक्ट्स एक ही क्लास के हैं और उनकी संबंधित प्रॉपर्टीज़ के मान समान हैं।
  • === (पहचान) - true लौटाता है यदि और केवल यदि दोनों वेरिएबल्स एक ही क्लास के एक ही इंस्टेंस को संदर्भित करते हैं।

तुलना के लिए टेस्ट क्लासेस

<?php
class test1 {
    private $x;
    private $y;
    function __construct($arg1, $arg2) {
        $this->x = $arg1;
        $this->y = $arg2;
    }
}
class test2 {
    private $x;
    private $y;
    function __construct($arg1, $arg2) {
        $this->x = $arg1;
        $this->y = $arg2;
    }
}
?>

1. एक ही क्लास के दो ऑब्जेक्ट्स (समान प्रॉपर्टीज़)

$a = new test1(10, 20);
$b = new test1(10, 20);
echo "same class objects\n";
echo "using == : "; var_dump($a == $b);
echo "using === : "; var_dump($a === $b);

आउटपुट

same class objects
using == : bool(true)
using === : bool(false)

2. एक ही ऑब्जेक्ट के दो रेफरेंसेज

$a = new test1(10, 20);
$c = $a;
echo "same object references\n";
echo "using == : "; var_dump($a == $c);
echo "using === : "; var_dump($a === $c);

आउटपुट

same object references
using == : bool(true)
using === : bool(true)

3. अलग-अलग क्लासेज के दो ऑब्जेक्ट्स (समान प्रॉपर्टीज़)

$a = new test1(10, 20);
$d = new test2(10, 20);
echo "different class objects\n";
echo "using == : "; var_dump($a == $d);
echo "using === : "; var_dump($a === $d);

आउटपुट

different class objects
using == : bool(false)
using === : bool(false)

सारांश

परिदृश्य=====
एक ही क्लास, समान प्रॉपर्टीज़truefalse
एक ही इंस्टेंस के रेफरेंसेजtruetrue
अलग क्लास, समान प्रॉपर्टीज़falsefalse
  1. - PHP का उपयोग करके रैंडम स्ट्रिंग जनरेट करना

    PHP में रैंडम स्ट्रिंग जनरेट करना विधि 1: md5() + mt_rand() + substr() (पुराना तरीका) <?php $res = substr(md5(mt_rand()), 0, 5); echo रैंडम स्ट्रिंग प्रदर्शित हो रही है...\n; echo $res; ?> आउटपुट रैंडम स्ट्रिंग प्रदर्शित हो रही है... 1c856 विधि 2: random_bytes() + bin2hex() (क्रिप्टोग्र

  1. - PHP में डबल नॉट (!!) ऑपरेटर

    PHP में डबल नॉट (!!) ऑपरेटर डबल नॉट (!!) ऑपरेटर में, पहला ! एक मान को निगेट करता है (बूलियन में बदलता है और उलटता है), और दूसरा ! फिर से निगेट करता है, जिससे मूल मान की **बूलियन समतुल्यता** प्रभावी रूप से प्राप्त होती है। यह किसी भी मान को उसके **ट्रूथी/फाल्सी** बूलियन प्रतिनिधित्व में बदलने का एक

  1. - PHP में दो तिथियों की तुलना करना

    PHP में तिथियों की तुलना PHP में दो तिथियों की तुलना करने के लिए, आप समानता ऑपरेटर (==) या तुलनात्मक ऑपरेटर (<, >) का उपयोग कर सकते हैं। यह तब काम करता है जब तिथियाँ मानक YYYY-MM-DD प्रारूप में स्ट्रिंग के रूप में संग्रहीत होती हैं। उदाहरण 1: समान तिथियों की जाँच <?php $dateOne = 2019-10-3