作った理由
とあるプロジェクトで自動化システムを作っています。
大変複雑で、配列を使いまわしているうちに、何度も使う処理を必要にかられて関数にしました。
なんでこういう関数がないんだろう? と同じように思われている方の参考になれば幸いです。
- array_same ... 単純ですが本当にこれがないと大変です…。
- array_remove ... 同名の関数が PostgreSQL にはあります。PHP にはないのが不思議です。
2020.03.19 ブログの方でコメントを頂き、array_same を短縮化しました。pickles さん、ありがとうございます。
配列の中の値がすべて同じか
/**
* 配列の中の値がすべて同じか
* @param array $array 配列
* @return bool
*/
function array_same($array)
{
return count(array_unique($array)) === 1;
}
配列から指定の値を削除
/**
* 配列から指定の値を削除
* @param array $array 削除対象の配列
* @param array $val 削除する値を配列で指定
* @return array
*/
function array_remove($array, $val)
{
// 取り除いた後、インデックスは元のままなので詰める
return array_values(array_diff($array, $val));
}
※ ブログ に同じ記事を掲載しています。