1

配列が空かどうかを確認しようとしていますが、不思議なことに機能しません。

foreach ($friend as $key => $id){

    $friendActivity = $db->friendActivity($id);

    if (!empty($friendActivity)) {

        //rest of the code

    }

}

if ステートメントの前にvar_dump($friendActivity)を使用しました。結果は次のとおりです。

array(0) { } array(0) { } array(0) { } array(0) { } array(0) { } array(0) { }  

//////---> 知っておくべきこと <--------/////////

私は配列の数を見ようとしていません。データベース内の各ユーザーにはいくつかのアクティビティがあります。それらのアクティビティが (アクティビティの投票) と一致するかどうかを確認したい。したがって、ユーザーが自分のアクティビティについて言及した場合、$friendActivity は空にはなりません。

空を使用する場合:

if (empty($friendActivity)){

    //rest of the code

}

私はif条件の中に入ることができます...

個人的には、他のユーザーの友達のアクティビティを保存しないように、各 foreach ループの最後に配列を削除する必要があると思います。

4

2 に答える 2

3

count()正確な配列番号が得られるはずです: http://php.net/manual/en/function.count.php

if (count($friendActivity) > 0) {
   ...
}
于 2012-04-05T01:19:27.013 に答える
0

この解決策を試すことができます:

if (sizeof($friendActivity) > 0) {
于 2016-08-04T13:11:41.017 に答える