PHP kullanarak ... bir örnek. Bu bir uyarı üretir - beklendiği gibi - ve $myVar bool (true) olarak kalır.
$myVar = true;
$myVar[] = 'Hello'; // Warning: Cannot use a scalar value as an array
Ama bu bir sonraki örnek 'works, $myVar tek bir unsur' Merhaba 'ile bir dizi dönüştürülür.
$myVar = false;
$myVar[] = 'Hello'; // Converted into an array
Sonuçlar:
array(1) {
[0]=>
string(5) "Hello"
}
Ancak her ikisi de bool (true) ve bool (false) skalar her ikisi de. Peki neden fark? PHP ne kural bu davranışını yöneten? Yoksa 'bu sadece bir şekilde' nedir?!
Ben başlangıçta tipi döküm kuralları ile ilgisi olabileceğini düşündüm, ama her ikisi de bool (true) ve bool (false) bu konuda aynı şekilde davranır.
Teşekkürler.