※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

配列用関数

  • ここでは、使用頻度の高い配列処理関数群の説明をします

 

配列用の関数

array関数
機能と返り値 引数に列挙されたデータをまとめて変数に代入
引数 配列に代入する1つまたは複数のデータ

<?php
    $names = array("鈴木", "田中", "高橋", "山田");

    for ($i=0; $i=3, $i++) {
        print  $i . "回目のループ= " . $names[$i] ."さんです<br />";
    }
?>

 

count関数
機能と返り値 引数に指定した配列のデータ数を返す.配列のインデックスは0から始まる
引数 任意の配列

<?php
    $names = array("鈴木", "田中", "高橋", "山田");

    for ($i=0; $i < count($names); $i++) {
        print   $names[$i] . "<br />"
    }
?>

 

list / each関数
機能と返り値 listは、1回の操作で複数の引数に値を代入.eachは、配列からキーとデータの値をペアで取り出す
引数

listでは、eachで取り出されたキーと値を代入する変数を指定.eachでは、任意の配列を指定

<?php
    $userList = array(
                                  "no"            => "1",
                                  "name"       => "山田",
                                  "address"  => "東京都",
                                  "tel"            => "03-0000-1111",
                                  "mail"         => "yamada@aaaaaa.com",
                         );

    while (list($key, $value) = each($userList)) {
         print   $key . "=" . $value . "<br />";
    }
?>

◆正直あまり使用ことがないかも.これを使うのだったら断然 foreach 文を使うべき

 

sort関数
機能と返り値 配列内のデータをソート.引数として渡した配列がそのままソートされる
引数 任意の配列

<?php
    $a = array(500, 12, 100, 1, 256, 45);

    for ($i=0; $i < count($a); $i++) {
        print   $a[$i] . "<br />"
    }

    //ここでソート処理
    sort($a);

    for ($i=0; $i < count($a); $i++) {
        print   $a[$i] . "<br />"
    }
?>

 

array_unique関数
機能と返り値 配列内の重複したデータを取り除いた結果を返す.重複した場合、2番目以降を空にし、配列内を前詰めにはしません
引数 任意の配列

<?php
    $a = array(500, 12, 100, 1, 256, 12, 50, 12);

    //重複値を取り除く
    $unique = array_unique($a);
    for ($i=0; $i < count($names); $i++) {
        print   $i . " = " . $unique[$i] . "<br />"
    }
?>

 

array_sum関数
機能と返り値 配列内のデータの合計を返す
引数 任意の配列

<?php
    $a = array(500, 12, 100, 1, 256, 12, 50, 12);

    print   array_sum($a);
?>

 

array_search関数
機能と返り値 連想配列内のデータを検索し、そのキーを返す
引数 第一引数に検索するデータを指定し、第二引数に検索対象の任意の配列を指定

<?php
    $userList = array(
                                  "no"            => "1",
                                  "name"       => "山田",
                                  "address"  => "東京都",
                                  "tel"            => "03-0000-1111",
                                  "mail"         => "yamada@aaaaaa.com",
                         );

    print   array_seatch("東京都", $userList);
?>

 

array_flip関数
機能と返り値  連想配列内のキーと値の入れ替え結果を返す
引数 任意の連想配列

<?php
    $userList = array(
                                  "no"            => "1",
                                  "name"       => "山田",
                                  "address"  => "東京都",
                                  "tel"            => "03-0000-1111",
                                  "mail"         => "yamada@aaaaaa.com",
                         );

    //入れ替え
    $flipdata = array_flip($userList);
    while (list($key, $value) = each($flipdata)) {
        print   $key . " = " . $value . "<br />";
    }
?>

 

array_unshift関数
機能と返り値  
引数 第一引数に任意の配列.第二引数以降には、追加する複数データ

<?php
    $names = array("鈴木", "田中", "高橋", "山田");

    $retcnt = array_unshift($names, "阿達", "川上", "小川")
    for ($i=0; $i < $retcnt; $i++) {
        print   $names[$i] . "<br />"
    }
?>

 

array_push関数
機能と返り値  配列の最後にデータを追加
引数 第一引数に任意の配列.第二引数以降には、追加する複数データ

<?php
    $names = array("鈴木", "田中", "高橋", "山田");

    $retcnt = array_push($names, "阿達", "川上", "小川")
    for ($i=0; $i < $retcnt; $i++) {
        print   $names[$i] . "<br />"
    }
?>

 

array_shift関数
機能と返り値 配列の先頭データを削除します.削除後の配列データは前詰めされる.削除されたデータの内容が返り値
引数 任意の配列

<?php
    $names = array("鈴木", "田中", "高橋", "山田");

    $deleteData = array_shift($names);
    print   $deleteData . "削除しました" . "<br />";
    for ($i=0; $i < count($names); $i++) {
        print   $names[$i] . "<br />";
    }
?>

 

 

 

array_pop関数
機能と返り値

配列の最後のデータを削除.削除されたデータの内容が返り値

引数 任意の配列

<?php
    $names = array("鈴木", "田中", "高橋", "山田");

    $deleteData = array_pop($names);
    print   $deleteData . "削除しました" . "<br />";
    for ($i=0; $i < count($names); $i++) {
        print   $names[$i] . "<br />";
    }
?>

 

join / implode関数
機能と返り値 配列内の各データを1つの文字列に結合
引数 第二引数に任意の配列.データを結合する際、データ間に挿入する文字を第一引数に指定

<?php
    $names = array("鈴木", "田中", "高橋", "山田");

    print   join("と", $names);
    print   implode("さんと", $names);
?>

 

str_split関数
機能と返り値 文字列を指定サイズごとに区切って、それぞれのデータを配列にして返す
引数 第一引数に任意の配列.第二引数に、文字列を区切るバイト数を指定

<?php
    $a = "abcdefg";
    $b = str_split($a);      //文字列を1バイトずつ区切って配列に代入
   
    for ($i=0; $i < count($b); $i++) {
        print   $b[$i] . "<br />";
    }
 
    $c = "鈴木田中高橋山田";
    $d = str_split($c)        //文字列を4バイト(漢字2文字)ずつ区切って配列に代入

    for ($i=0; $i < count($d); $i++) {
        print   $d[$i] . "<br />";
    }
?>

 

is_array関数
機能と返り値 引数に指定した変数が、配列なのかチェック
引数 任意の配列

<?php
    $name1 = "植田";
    print  (is_array($name1) ? "配列です" : "配列ではない") . "<br />";

    $name2 = array("鈴木", "田中", "高橋", "山田");
    print  (is_array($name2) ? "配列です" : "配列ではない") . "<br />";

?>

 

◆配列用のデバック機能で、print_r 関数を使用しよう
    $names = array("鈴木", "田中", "高橋", "山田"); 
    //変数$namesが、配列か調べる
    print_r($names);

 

 

 

 



 

 

|新しいページ|検索|ページ一覧|RSS|@ウィキご利用ガイド | 管理者にお問合せ
|ログイン|