« PHP:array_unique()関数 | メイン | PHP:array_diff()関数・array_diff_assoc()関数 »

2005年11月15日

PHP:array_map()関数

array_map()関数は、指定した配列の各要素に対してユーザ定義関数(function)を実行し、結果を新たな配列として返します。

※複数の配列に同時にarray_map()関数を実行することも可能です。

function getNum($num){
    $newNum = $num*$num;
    return $newNum;
}

$ARRAY = array(1, 4, 12);
$NEWARRAY = array_map("getNum", $ARRAY);
print_r($NEWARRAY);

※上記の結果、「Array([0]=>1 [1]=>16 [2]=>144)」を出力します。

function getStr($str1, $str2){
    if(!$str2){
        return $str1;
    }else{
        return $str1."(".$str2.")";
    }
}

$ARRAY1 = array("PHP", "perl", "SQL");
$ARRAY2 = array("ピーエイチピー", "パール", "エスキューエル");
print_r(array_map("getStr", $ARRAY1, $ARRAY2));

※上記の結果、「Array([0]=>PHP(ピーエイチピー) [1]=>perl(パール) [2]=>SQL(エスキューエル))」を出力します。

※上記のように複数の配列を指定し、各配列の要素数が等しくない場合には、要素数が少ない配列は、最も要素数が多い配列に合わせて空の要素で拡張されます。

投稿者 wing : 2005年11月15日 21:23

コメント