更新履歴
更新日 | 更新者 | 更新内容 |
---|---|---|
2021/8/13 | JJI | ・”はじめに”の段落の内容を修正 |
2021/8/20 | JJI | ・サンプルプログラムの実行結果に画面の画像を追加 |
はじめに
配列を表示するため、次の共通関数を使用している場合があります。
array_reverse
array_reverse()関数を使用したサンプルプログラムです。
<?php
// 引数の値への厳密な型付け
declare(strict_types = 1);
// ライブラリの読み込み
require_once "lib/sample_lib_02_03.php";
echo "ファイル名:sample02_03_41.php<br>\n";
echo "【PHP】配列関数:array_reverse<br>\n";
// 1次元配列
$ary1 = [
"山田", "太郎", 35, "男性", "東京都"
];
// 1次元連想配列
$ary2 = [
"first_name" => "山田", "second_name" => "太郎", "age" => 35, "seibetsu" => "男性", "pref" => "東京都"
];
echo '配列の逆転、添え字は逆転しない' . "<br>\n";
$result = array_reverse($ary1);
echo_array1($result);
echo '配列の逆転、添え字は逆転する' . "<br>\n";
$result = array_reverse($ary1, true);
echo_array1($result);
echo '連想配列の逆転' . "<br>\n";
$result = array_reverse($ary2, true);
echo_array1($result);
?>
実行結果です。
・画面

・HTML
ファイル名:sample02_03_41.php<br>
【PHP】配列関数:array_reverse<br>
配列の逆転、添え字は逆転しない<br>
[0]:東京都: [1]:男性: [2]:35: [3]:太郎: [4]:山田:<br><br>
配列の逆転、添え字は逆転する<br>
[4]:東京都: [3]:男性: [2]:35: [1]:太郎: [0]:山田:<br><br>
連想配列の逆転<br>
[pref]:東京都: [seibetsu]:男性: [age]:35: [second_name]:太郎: [first_name]:山田:<br><br>
array_search
array_search()関数を使用したサンプルプログラムです。
<?php
// 引数の値への厳密な型付け
declare(strict_types = 1);
// ライブラリの読み込み
require_once "lib/sample_lib_02_03.php";
echo "ファイル名:sample02_03_42.php<br>\n";
echo "【PHP】配列関数:array_search<br>\n";
// 1次元配列
$ary1 = [
"山田", "太郎", 35, "男性", "東京都"
];
// 1次元連想配列
$ary2 = [
"first_name" => "山田", "second_name" => "太郎", "age" => 35, "seibetsu" => "男性", "pref" => "東京都"
];
echo '配列:$ary1の値に"太郎"が存在するか検索する' . "<br>\n";
echo "検索結果:" . array_search("太郎", $ary1) . ":<br><br>\n";
echo '連想配列:$ary2の値に"男性"が存在するか検索する' . "<br>\n";
echo "検索結果:" . array_search("男性", $ary2) . ":<br><br>\n";
echo '配列:$ary1の値に"次郎"が存在するか検索する' . "<br>\n";
if(array_search("次郎", $ary1) === false) {
echo '$ary1の値には"次郎"は存在しません' . "<br><br>\n";
}
?>
実行結果です。
・画面

・HTML
ファイル名:sample02_03_42.php<br>
【PHP】配列関数:array_search<br>
配列:$ary1の値に"太郎"が存在するか検索する<br>
検索結果:1:<br><br>
連想配列:$ary2の値に"男性"が存在するか検索する<br>
検索結果:seibetsu:<br><br>
配列:$ary1の値に"次郎"が存在するか検索する<br>
$ary1の値には"次郎"は存在しません<br><br>
array_slice
配列
配列にarray_slice()関数を使用したサンプルプログラムです。
<?php
// 引数の値への厳密な型付け
declare(strict_types = 1);
// ライブラリの読み込み
require_once "lib/sample_lib_02_03.php";
echo "ファイル名:sample02_03_43.php<br>\n";
echo "【PHP】配列関数:array_slice<br>\n";
// 1次元配列
$ary1 = [
"山田", "太郎", 35, "男性", "東京都", "090-9999-9999"
];
echo '配列の4番目以降を切り取る' . "<br>\n";
$result = array_slice($ary1, 3);
echo_array1($result);
echo '配列の3番目以降から3つの要素を切り取る' . "<br>\n";
$result = array_slice($ary1, 2, 3);
echo_array1($result);
echo '配列の2番目以降から3つの要素を切り取る' . "<br>\n";
$result = array_slice($ary1, -5, 3);
echo_array1($result);
echo '配列の4番目以降を切り取り、添え字は元の配列のままにする' . "<br>\n";
$result = array_slice($ary1, 3, null, true);
echo_array1($result);
echo '配列の存在しない位置を指定する、空の配列が返される' . "<br>\n";
$result = array_slice($ary1, 6, 3);
if(empty($result)) {
echo '$resultは空です' . "<br>\n";
}
?>
実行結果です。
・画面

・HTML
ファイル名:sample02_03_43.php<br>
【PHP】配列関数:array_slice<br>
配列の4番目以降を切り取る<br>
[0]:男性: [1]:東京都: [2]:090-9999-9999:<br><br>
配列の3番目以降から3つの要素を切り取る<br>
[0]:35: [1]:男性: [2]:東京都:<br><br>
配列の2番目以降から3つの要素を切り取る<br>
[0]:太郎: [1]:35: [2]:男性:<br><br>
配列の4番目以降を切り取り、添え字は元の配列のままにする<br>
[3]:男性: [4]:東京都: [5]:090-9999-9999:<br><br>
配列の存在しない位置を指定する、空の配列が返される<br>
$resultは空です<br>
連想配列
連想配列にarray_slice()関数を使用したサンプルプログラムです。
<?php
// 引数の値への厳密な型付け
declare(strict_types = 1);
// ライブラリの読み込み
require_once "lib/sample_lib_02_03.php";
echo "ファイル名:sample02_03_43.php<br>\n";
echo "【PHP】配列関数:array_slice<br>\n";
// 1次元連想配列
$ary1 = [
"first_name" => "山田",
"second_name" => "太郎",
"age" => 35,
"seibetsu" => "男性",
"pref" => "東京都",
"tel" => "090-9999-9999"
];
echo '配列の4番目以降を切り取る' . "<br>\n";
$result = array_slice($ary1, 3);
echo_array1($result);
echo '配列の3番目以降から3つの要素を切り取る' . "<br>\n";
$result = array_slice($ary1, 2, 3);
echo_array1($result);
echo '配列の2番目以降から3つの要素を切り取る' . "<br>\n";
$result = array_slice($ary1, -5, 3);
echo_array1($result);
echo '配列の4番目以降を切り取り、添え字は元の配列のままにする、連想配列の場合、意味がない' . "<br>\n";
$result = array_slice($ary1, 3, null, true);
echo_array1($result);
echo '配列の存在しない位置を指定する、空の配列が返される' . "<br>\n";
$result = array_slice($ary1, 6, 3);
if(empty($result)) {
echo '$resultは空です' . "<br>\n";
}
?>
実行結果です。
・画面

・HTML
ファイル名:sample02_03_43.php<br>
【PHP】配列関数:array_slice<br>
配列の4番目以降を切り取る<br>
[seibetsu]:男性: [pref]:東京都: [tel]:090-9999-9999:<br><br>
配列の3番目以降から3つの要素を切り取る<br>
[age]:35: [seibetsu]:男性: [pref]:東京都:<br><br>
配列の2番目以降から3つの要素を切り取る<br>
[second_name]:太郎: [age]:35: [seibetsu]:男性:<br><br>
配列の4番目以降を切り取り、添え字は元の配列のままにする、連想配列の場合、意味がない<br>
[seibetsu]:男性: [pref]:東京都: [tel]:090-9999-9999:<br><br>
配列の存在しない位置を指定する、空の配列が返される<br>
$resultは空です<br>
コメント