Closed zombozo12 closed 4 years ago
PHP punya fitur namaya PHP Type Juggling, biasanya digunakan saat menggunakan penkondisian seperti if else dll. PHP akan mengkonversi value ke comparable type.
Variable
$key
jika memiliki value0
,false
,array()
, dan "" (empty string) menggunakan operator==
di dalam pengkondisianIF ELSE
, maka$key
akan dianggap sebagaiNULL
. Contoh:0 == NULL
adalahtrue
array() == NULL
adalahtrue
karenaarray()
sebagai default tidak memiliki isi akan ter-define sebagaiNULL
. Untuk menghindari kejadian yang seharusnya tidak terjadi, dan apabila value yang diinginkan hanyalahNULL
, maka saya sarankan menggunakan operator===
agar proses perbandingan dapat lebih strict.References: PHP Type Juggling by Chris Smith PHP.net PHP Type Juggling Vulnerabilities
Noted. Makasih ram infonya, btw feel free to contribute!
Dengan senang hati wa
https://github.com/ichwanulfadhli/vigenere-cipher/blob/92b4d9ad11ab94de4d4d828ec08f8712d7f8e6d7/Vigenere.php#L44
PHP punya fitur namaya PHP Type Juggling, biasanya digunakan saat menggunakan penkondisian seperti if else dll. PHP akan mengkonversi value ke comparable type.
Variable
$key
jika memiliki value0
,false
,array()
, dan "" (empty string) menggunakan operator==
di dalam pengkondisianIF ELSE
, maka$key
akan dianggap sebagaiNULL
. Contoh:0 == NULL
adalahtrue
array() == NULL
adalahtrue
karenaarray()
sebagai default tidak memiliki isi akan ter-define sebagaiNULL
. Untuk menghindari kejadian yang seharusnya tidak terjadi, dan apabila value yang diinginkan hanyalahNULL
, maka saya sarankan menggunakan operator===
agar proses perbandingan dapat lebih strict.References: PHP Type Juggling by Chris Smith PHP.net PHP Type Juggling Vulnerabilities