PHP-də == və === operatorları arasındakı fərq nədir?


cavab 1:

PHP-nin istifadə etdiyi bir çox müqayisə operatorundan ikisi '==' (yəni bərabərdir) və '===' (yəni eyni). İkisindən fərq ondadır ki, '==' iki əməliyyatın dəyərlərinin eyni olub olmadığını yoxlamaq üçün istifadə edilməlidir. Digər tərəfdən, '===' həm dəyərləri, həm də operandların növünü yoxlayır. Bir neçə nümunə ilə daha çox izah edim: == (eyni): Nəticə: Bəli Yuxarıdakı kod "YES" çıxdı. Səbəb operandların dəyərlərinin eyni olmasıdır. Aşağıdakı nümunə kodunu işlədiriksə: === (Eyni): Nəticə: Xeyr, nəticə "YOX". Səbəb odur ki, hər iki operandanın dəyərləri eyni olsa da, növləri bir-birindən fərqlidir, "22" (tirnoqlarla) bir simdir, 22 (tirnoq işarəsi olmadan) isə tam ədəddir. Ancaq yuxarıdakı kodu aşağıdakı kimi dəyişdirsək: = == (eyni): Nəticə: Bəli, nəticə "YES" dir. Diqqət yetirin ki, sağ operandın növünü sol operand (yəni sətir) ilə eyni olan bir simə dəyişdirdik. İndi sol və sağ operandaların növləri və dəyərləri eynidır, buna görə də hər iki operand eynidır.


cavab 2:

Hər ikisi == və === php-də müqayisə operatorudur.

  • ==, LHS və RHS üçün dəyərlərin eyni olmasını nəzərdə tutur. (məlumatların növündən asılı olmayaraq.) === LHS və RHS üçün dəyərlərin eyni olmalı və eyni məlumat tipinə sahib olmağı nəzərdə tutur.

Məsələn.

Düşünün

int a = 10;

Sətir c = "10";

İndi "==" vəziyyətində:

a == c // çıxışı doğrudur

// çünki hər ikisi eyni dəyərə malikdir.

"===" vəziyyətində:

a === c // çıxışı yalnışdır

// hər ikisi eyni dəyərə malikdir, lakin fərqli bir məlumat növüdür.


cavab 3:

Hər ikisi == və === php-də müqayisə operatorudur.

  • ==, LHS və RHS üçün dəyərlərin eyni olmasını nəzərdə tutur. (məlumatların növündən asılı olmayaraq.) === LHS və RHS üçün dəyərlərin eyni olmalı və eyni məlumat tipinə sahib olmağı nəzərdə tutur.

Məsələn.

Düşünün

int a = 10;

Sətir c = "10";

İndi "==" vəziyyətində:

a == c // çıxışı doğrudur

// çünki hər ikisi eyni dəyərə malikdir.

"===" vəziyyətində:

a === c // çıxışı yalnışdır

// hər ikisi eyni dəyərə malikdir, lakin fərqli bir məlumat növüdür.