残念ですが・・・これは完全に無駄ですね。 empty は!isset($foo) || !$fooの簡潔なもので!emptyはisset($foo) && $fooに類似しています。 emptyはissetと逆のことをして、その値が正しいかどうかを確認してくれます。
もっと簡単にいうと、empty は!$fooと同じものであるが、変数が存在しない場合は一切警告を表示しません。関数がセットされていなくてもブール代数の比較を行うということが、この関数の一番重要なところです。
マニュアルにはこのように書いてあります。
変数が空であるかどうかを検査します。 変数が空であるとみなされるのは、変数が存在しない場合や 変数の値が FALSE に等しい場合です。 empty() は、変数が存在しない場合でも警告を発しません。
そのため、!empty($vars[1])を使うだけでよいのです。参考になりますでしょうか。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。