2012-01-06 40 views
0

二つの例:配列/リスト内に要素があるかどうかを確認する必要がありますか?

Pythonの

my_list = [] 
if my_list: 
    for item in my_list: ... 
# or just 
for item in my_list 

PHP

$result = mysqli_query($db, "..."); 
if (mysqli_num_rows($result)) { 
    while (mysqli_fetch_array($result)) {} 
} 
// or just 
while(mysqli_fetch_array($result)) {} 

リストまたはMySQLの結果は、メッセージを促すことにより、空である場合、私は、ユーザーに通知を認識していないよと仮定どんな違いがありますあなたのメールボックスには手紙がありません!例えば。

答えて

0

この場合、それは好みの問題だと思います。しかし、それはあなたが戻って取得行数に応じて、あなたは他のことを行うのではなく、一度だけ、それをチェックすることができ、この場合、

if (mysqli_num_rows($result)) { 
while (mysqli_fetch_array($result)) {} 
} 

を行うには、より理にかなって。しかし、もう一度、その好み、そしてあなたが決してそれをもう一度チェックしないことを知っているなら、それはあなたのコードをそれを第2の方法で行うために清潔にします。

0

イテレータを使用するforeachスタイルのコンストラクトでは、事前にチェックするメリットがなく、場合によっては高価な計算を2回実行することがあります。イテレータ自体はデータの存在をチェックして作業を行う必要があるため、追加のチェックを追加することは価値がありません。このようなチェックを追加するだけで、コードを読みにくくなり、そのまま放置する必要があります。

関連する問題