eyecatch php

PHP

【PHP】配列の空要素を削除する方法

2019/04/23

配列を調査し、要素が空白の場合はキーごと削除する方法を備忘録としてポストします。

配列から空要素をキーごと削除する方法

以下の様な配列があるとします。

キー Denmark がいわゆる空要素です。
その他に、NULL、FALSE、1、半角スペースなどがある配列です。

この配列から空要素を排除したい場合、どうすれば良いでしょうか。

foreachでグリグリ回す方法がまず、思い浮かびます。

結果は以下。

判定の書き方にもよりますが、今回の書き方だと「0」、「空白」、「FALSE」、「NULL」が削られてしまいました。「0」はフラグなどでも使う要素なので、削除されてしまうのは何とかしたい。

ということで、もうちょっとスマートに出来る方法がこれ。

結果。

「2番目の引数の関数(strlen)をコールして「値の文字列の長さ」を調査、FALSEであればその要素を削除」という仕様なので、「FALSE」と「NULL」は削られますが、「0」、「半角スペース」は削除されません。

これで欲しい結果が取得出来ます。
なるほどですね。

-PHP
-, , , , ,