【PHP】 배열의 모든 요소를 ​​일괄 처리하는 array_walk() 함수와 array_map() 함수

8336 단어 PHParray배열
안녕하세요. 이번에는 array_walk() 함수와 array_map() 함수의 2개를 이용하여 배열의 모든 요소를 ​​일괄 처리해 보겠습니다.

array_walk() 예제


  • 리스트 표시(ul,li)하는 함수를 정의한다
  • 배열을 정의 (이번에는 하나의 배열), 우선은 print_r로 출력해 보자
  • array_walk ()로 함수 내에서 출력합니다.

    출력 결과


    array_walk.php
    
    <!DOCTYPE html>
    <html lang="ja">
    <head>
        <meta charset="UTF-8">
        <title>配列のすべての要素を一括処理したい(array_walk)</title>
        <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    </head>
    <body>
    <div>
        <?php
        // ユーザー定義関数
        function printIdList($value, $index) {
            echo "<ul>";
            echo "<li>No:".$index."</li>";
            echo "<li>Id".$value."</li>";
            echo "<ul>";
        }
    
        echo "<p>対象の配列</p>";
        // 配列を$idListに定義
        $idList = array("terurou","taro","jiro");
        print_r($idList);
        echo "</p>";
    
        // array_walk()->配列の各要素の対して指定した関数を実行する
        // array_walk(指定した配列,ユーザー定義関数);
        echo "<p>一括処理した結果</p>";
        array_walk($idList, 'printIdList');
     ?>
     </div>
    </body>
    </html>
    

    array_map() 예제


  • 리스트 표시(ul,li)하는 함수를 정의한다
  • 배열을 정의 (이번에는 복수의 배열을 준비), 우선은 print_r로 출력해 보자
  • array_walk ()로 함수 내에서 출력합니다.

    출력 결과


    array_map.php
    
    <!DOCTYPE html>
    <html lang="ja">
    <head>
        <meta charset="UTF-8">
        <title>配列のすべての要素を一括処理したい(array_map)</title>
    </head>
    <body>
    <?php 
    
    // ユーザー定義関数
    function printUserData($id,$name,$age) {
        echo "<ul>";
        echo "<li>ID:".$id."</li>";
        echo "<li>Name:".$name."</li>";
        echo "<li>Age:".$age."</li>";
        echo "</ul>";
    }
    
    $idList = array("terurou","taro","jiro");
    $nameList = array("八木照郎","山田太郎","鈴木次郎");
    $ageList = array(25,72,40);
    
    echo "<p>1つ目の配列:";
    print_r($idList);
    echo "</p>";
    
    echo "<p>2つ目の配列:";
    print_r($nameList);
    echo "</p>";
    
    echo "<p>3つ目の配列:";
    print_r($ageList);
    echo "</p>";
    
    echo "<p>array_map()で一括処理した結果</p>";
    // array_map(関数名,配列1,配列2,...)
    array_map("printUserData",$idList,$nameList,$ageList);
    
     ?>
    </body>
    </html>
    
    

    array_walk는 array_walk (배열, 함수);
    반면,
    array_map은 array_map (함수, 배열);
    라는 점에 유의하십시오.

    참고문헌



    PHP 역방향 레시피
  • 좋은 웹페이지 즐겨찾기