PHP में मान और प्रकार की समानता

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

उदाहरण देखें:

php<?php
  if ('3' === 3) {
    echo '+++';
  } else {
    echo '---'; // यह काम करेगा, क्योंकि मान प्रकार में समान नहीं हैं
  }
?>

लेकिन दो स्ट्रिंग्स '3' की तुलना करने पर स्क्रीन पर '+++' प्रिंट होगा:

php<?php
  if ('3' === '3') {
    echo '+++'; // यह काम करेगा
  } else {
    echo '---';
  }
?>

ठीक वैसे ही, जैसे संख्याओं की तुलना में:

php<?php
  if (3 === 3) {
    echo '+++'; // यह काम करेगा
  } else {
    echo '---';
  }
?>

दोनों ऑपरेटरों के बीच का अंतर तब स्पष्ट होता है जब मान समान होते हैं, लेकिन डेटा प्रकार अलग होता है। अन्य सभी मामलों में ये ऑपरेटर समान रूप से काम करते हैं। उदाहरण के लिए, अलग-अलग संख्याओं की तुलना करने पर, निश्चित रूप से, माइनस प्रिंट होगा:

php<?php
  if (2 === 3) {
    echo '+++';
  } else {
    echo '---'; // यह काम करेगा
  }
?>

वर्तमान में PHP में, हर जगह सख्त तुलना का उपयोग करना सामान्य बात है। ऐसा माना जाता है कि इससे कोड त्रुटियों के प्रति कम संवेदनशील होता है।

Задание 1

कोड चलाए बिना निर्धारित करें कि स्क्रीन पर क्या प्रिंट होगा:

php<?php
  $test1 = '3';
  $test2 = '3';
    
  if ($test1 == $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 2

कोड चलाए बिना निर्धारित करें कि स्क्रीन पर क्या प्रिंट होगा:

php<?php
  $test1 = '3';
  $test2 = '3';
    
  if ($test1 === $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 3

कोड चलाए बिना निर्धारित करें कि स्क्रीन पर क्या प्रिंट होगा:

php<?php
  $test1 = 3;
  $test2 = '3';
    
  if ($test1 == $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 4

कोड चलाए बिना निर्धारित करें कि स्क्रीन पर क्या प्रिंट होगा:

php<?php
  $test1 = 3;
  $test2 = '3';
    
  if ($test1 === $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 5

कोड चलाए बिना निर्धारित करें कि स्क्रीन पर क्या प्रिंट होगा:

php<?php
  $test1 = 3;
  $test2 = 3;
    
  if ($test1 === $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>