PHP 的 empty()

Nuzzel 上看到的文章,講 PHP 裡不應該使用 empty():「When to use empty in PHP? I’d say never」。

之前寫 PHP 時很習慣用 ===!== 比較,另外習慣用 is_type() 先判斷型態再去搭其他的判斷 (像是 is_array()is_string() 這類型態確認),算是避免了文章裡面提到的問題,而且也提高了程式的可讀性 (因為開發者看到 is_type() 可以預期型態)。

比較討厭的應該是偶而還是會搞混 + (數字相加) 與 . (字串串接),還有 + 對兩個數字字串是可以操作的 (然後會傳回 int):

$ php -a
Interactive mode enabled

php > var_dump('123' + '456');
int(579)
php >

用過都說幹 XD