変数が空でないかどうかをチェックするこの特定のコードがあります。変数が空でない場合は、値が「含まれている」配列にマージされます。空の場合は配列にマージされますが、「null値でも値やその他のものはありません」を渡します
ここに私のコードがあります。
$fb_description_arr[] = ($page_desc != "") ? $page_desc : array();
$fb_share_arr[] = ($share_link != "") ? $share_link : array();
$tweet_arr[] = ($twitter_link != "") ? $twitter_link : array();
$follow_arr[] = ($twitter_follow != "") ? $twitter_follow : array();
$site_link_arr[] = ($site_link != "") ? $site_link : array();
$ page_descがnullでなく、値が「This is me」で、残りの変数がnullであるとします。
$test_arr = array_merge($fb_description_arr, $fb_share_arr, $tweet_arr, $follow_arr, $site_link_arr);
print_r($test_arr);
そこで、マージされた配列をデバッグして表示しようとしました。それは以下に示されます。
配列([0]=>これはme[1] =>配列()[2] =>配列()[3] =>配列()[4] =>配列())
したがって、phpのcount()関数を使用してカウントアップすると
$total_raffle = count(array_merge($fb_description_arr, $fb_share_arr, $tweet_arr, $follow_arr, $site_link_arr));
明らかに、「5」の出力が表示されます
count()関数でカウントされない空の値を渡すために三項演算子で試した解決策。
- 配列()
- ヌル
- false
- ""
$ page_descが値を持つ唯一の変数であり、残りには値がないため、希望する出力は「1」です。
このようなものの解決策はありますか?
助けていただければ幸いです。:)