現在の言語: 日本語 |
配列の追加(1) |
配列関連 |
class test1
{
function test1()
{
//配列
echo "配列追加".PHP_EOL;
$ary1 = ["apple", "banana"];
$this->displayArray($ary1);
/*
i:0 ary:apple
i:1 ary:banana
*/
$ary1[] = "orange";//最後に追加
$this->displayArray($ary1);
/*
i:0 ary:apple
i:1 ary:banana
i:2 ary:orange
*/
//連想配列
echo "連想配列追加".PHP_EOL;
$ary2 = ["name"=>"yamada", "age"=>20];
$this->foreachArray($ary2);
/*
name: yamada
age: 20
*/
$ary2["class"] = "A";
$this->foreachArray($ary2);
/*
name: yamada
age: 20
class: A
*/
}
function test2()
{
//配列
echo "array_push".PHP_EOL;
$ary1 = ["apple", "banana"];
array_push($ary1, "orange", "grape");
$this->displayArray($ary1);
/*
i:0 ary:apple
i:1 ary:banana
i:2 ary:orange
i:3 ary:grape
*/
echo "array_merge".PHP_EOL;
$ary1 = [];
$ary1 = ["apple", "banana"];
$ary2 = ["orange", "grape"];
$ary3 = array_merge($ary1, $ary2);
$this->displayArray($ary3);
/*
i:0 ary:apple
i:1 ary:banana
i:2 ary:orange
i:3 ary:grape
*/
$ary1 = [];
$ary2 = [];
$ary3 = [];
$ary1 = ["apple", "banana"];
$ary2 = ["orange", "apple"];//重複するケース
$ary3 = array_merge($ary1, $ary2);
$this->displayArray($ary3);
/*
i:0 ary:apple
i:1 ary:banana
i:2 ary:orange
i:3 ary:apple
*/
}
private function displayArray(array $ary)
{
for($i=0; $i < count($ary); ++$i)
{
echo "i:$i ary:".$ary[$i].PHP_EOL;
}
}
//foreachを使った配列を読み込む方法
private function foreachArray(array $ary)
{
foreach ($ary as $key => $value)
{
echo $key . ': ' . $value . PHP_EOL;
}
}
}
echo "<pre>";
$cls1= new test1();
$cls1->test1();
$cls1->test2();
echo "</pre>";
class test1
{
function test1()
{
//Array
echo "Add array".PHP_EOL;
$ary1 = ["apple", "banana"];
$this->displayArray($ary1);
/*
i:0 ary:apple
i:1 ary:banana
*/
$ary1[] = "orange";//Add to end
$this->displayArray($ary1);
/*
i:0 ary:apple
i:1 ary:banana
i:2 ary:orange
*/
//Associative array
echo "Add associative array".PHP_EOL;
$ary2 = ["name"=>"yamada", "age"=>20];
$this->foreachArray($ary2);
/*
name: yamada
age: 20
*/
$ary2["class"] = "A";
$this->foreachArray($ary2);
/*
name: yamada
age: 20
class: A
*/
}
function test2()
{
//array
echo "array_push".PHP_EOL;
$ary1 = ["apple", "banana"];
array_push($ary1, "orange", "grape");
$this->displayArray($ary1);
/*
i:0 ary:apple
i:1 ary:banana
i:2 ary:orange
i:3 ary:grape
*/
echo "array_merge".PHP_EOL;
$ary1 = [];
$ary1 = ["apple", "banana"];
$ary2 = ["orange", "grape"];
$ary3 = array_merge($ary1, $ary2);
$this->displayArray($ary3);
/*
i:0 ary:apple
i:1 ary:banana
i:2 ary:orange i:3 ary:grape
*/
$ary1 = [];
$ary2 = [];
$ary3 = [];
$ary1 = ["apple", "banana"];
$ary2 = ["orange", "apple"]; //Duplicate case
$ary3 = array_merge($ary1, $ary2);
$this->displayArray($ary3);
/*
i:0 ary:apple
i:1 ary:banana
i:2 ary:orange
i:3 ary:apple
*/
}
private function displayArray(array $ary)
{
for($i=0; $i < count($ary); ++$i)
{
echo "i:$i ary:".$ary[$i].PHP_EOL;
}
}
//How to read an array using foreach
private function foreachArray(array $ary)
{
foreach ($ary as $key => $value)
{
echo $key . ': ' . $value . PHP_EOL;
}
}
}
echo "<pre>";
$cls1= new test1();
$cls1->test1();
$cls1->test2();
echo "</pre>";
| 方法 | 内容 | 備考 |
| $ary[] =$data; | 高速です。 末尾に追加されます。 | 単一データの追加 |
| array_push($ary, $ary1, $ary2); | 複数要素を追加 | 末尾に追加 |
| array_merge($ary1, $ary2); | 新規配列を作成して結合した結果を格納します。 | 複数の配列を結合します。 |
| 著作権情報 |
| ホームページおよプリ等に掲載されている情報等については、いかなる保障もいたしません。 ホームページおよびアプリ等を通じて入手したいかなる情報も複製、販売、出版または使用させたり、 または公開したりすることはできません。 当方は、ホームページおよびアプリ等を利用したいかなる理由によっての障害等が発生しても、 その結果ホームページおよびアプリ等を利用された本人または他の第三者が被った損害について 一切の責任を負わないものとします。 |