我有點難倒了一個標量類型提示問題(PHP7應該能夠處理)。基本上,我創建了一個bool
類型提示只允許布爾值傳遞的方法。但是它會失敗並讓其他類型的字符串通過。我相信在過去這對我有效。以該片段爲例。第一次轉儲導致false
(這是有道理的,因爲'test'
是一個字符串),第二次轉儲導致true
這對我沒有意義。由於該類型不是布爾值,我希望能夠觸發PHP錯誤。有什麼想法嗎?PHP 7布爾類型提示不工作
<?php
class Test{
function something(bool $test){
var_dump($test); // "Second dump"
}
}
$value = 'test';
var_dump(is_bool($value)); // "First dump"
$test = new Test;
$test->something($value);
結果:
bool(false)
bool(true)
在PHP 5.6由此產生一個錯誤:https://3v4l.org/ Uo7j0 – nickb
您是否啓用了嚴格的輸入? –
@JulienLachal我沒有。不知道在哪裏啓用它。生病谷歌那個。會及時向大家發佈。 – CodeGodie