PHP 配列内のデータに対して同じ処理を実行したいときに使える方法
配列内のデータに対して処理を行うときに、for や foreach を使用して処理しても良いですが、array_map を使用すれば、コードを簡潔に書くことができます。
array_map の使用方法
array_map([関数名],[配列])
関数名は文字列で指定してください。ここに指定された関数が各配列の値に対して実行されます。
コードサンプル。
function hello($x) {
echo $x;
}
array_map("hello", array(1, 2, 3, 4, 5));
配列内の要素すべてに htmlspecialchars を行いたい場合
再帰を使って多次元配列に対して処理。
function foo($data) {
if (is_array($data)) {
return array_map("foo", $data);
} else {
return htmlspecialchars($data, ENT_QUOTES);
}
}
デコードする場合。
function foo($data) {
if (is_array($data)) {
return array_map("foo", $data);
} else {
return htmlspecialchars_decode($data, ENT_QUOTES);
}
}