�� array()���g���Ĕz��쐬 $array = array(1, 2, 3); �쐬�����z��́A$array[0]�̂悤�ɂ��Ēl���Q�Ƃł���B �z��̗v�f��0�Ԗڂ���n�܂�̂�$array[0], $array[1], $array[2]�Ƒ������ƂɂȂ�B �� �v�f���Ƃɑ�����Ĕz��쐬 $array[0] = '�����0�Ԗڗv�f'; $array[1] = '�����1�Ԗڗv�f'; $array[2] = '�����2�Ԗڗv�f'; �� �v�f���Ƃɑ�����Ĕz��쐬�i���̂Q�j $array[] = '�����0�Ԗڗv�f'; $array[] = '�����1�Ԗڗv�f'; $array[] = '�����2�Ԗڗv�f'; 0�Ԗڗv�f����n�܂��ʂ̔z��̑��ɁA�A�z�z����B ��ʂ̔z���0�Ԗڗv�f���珇�ԂɂÂ��Ă������A�A�z�z��̓L�[�i������j�Ƃ��̒l�̃y�A�ɂȂ��Ă��āA��ʂ̔z��Ƃ̊ԂɈ������ɈႢ�͂Ȃ��B �� �A�z�z��̍쐬 // array()���g���č쐬 $hash = array('��' => '�x�m', '��' => '��', '�O' => '�Ȃ���'); // �v�f���Ƃɑ�����č쐬 $hash['��'] = '�x�m'; $hash['��'] = '��'; $hash['�O'] = '�Ȃ���'; �� �A���̒l�����z��̍쐬 $array = range(1, 5); // 1, 2, 3, 4, 5 $array = range(1, 10, 2); // 1, 3, 5, 7, 9 $array = range('a', 'f'); // 'a', 'b', 'c', 'd', 'e', 'f' �� �����l�����z��̍쐬 $array = array_fill(0, 3, 'foo'); // "foo", "foo", "foo" $array = array_pad(array(), 3, 'foo'); // "foo", "foo", "foo" �����l�Ŕz����Ɠ����ɏ���������ꍇ�ɕ֗�
�쐬�����z��́A$array[0]�̂悤�ɂ��Ēl���Q�Ƃł���B �z��̗v�f��0�Ԗڂ���n�܂�̂�$array[0], $array[1], $array[2]�Ƒ������ƂɂȂ�B
0�Ԗڗv�f����n�܂��ʂ̔z��̑��ɁA�A�z�z����B ��ʂ̔z���0�Ԗڗv�f���珇�ԂɂÂ��Ă������A�A�z�z��̓L�[�i������j�Ƃ��̒l�̃y�A�ɂȂ��Ă��āA��ʂ̔z��Ƃ̊ԂɈ������ɈႢ�͂Ȃ��B
�����l�Ŕz����Ɠ����ɏ���������ꍇ�ɕ֗�
�� is_array() �z��f�[�^���ǂ������`�F�b�N $array = array(); if (is_array($array)) echo '����͔z��ł��B'; �� count() �z��̗v�f���� $array = array('foo', 'bar', 'fuga', 'hoge'); $n = count($array); echo "�v�f����{$n}�ł��B"; // 4 sizeof()�̓G�C���A�X �� isset()��array_key_exists() �v�f�̗L�����`�F�b�N $key = 'foo'; if (isset($array[$key])) echo "���̗v�f�͖���`�ł�null�ł��Ȃ�"; if (array_key_exists($key, $array)) echo "���̗v�f�͖���`�ł͂Ȃ�"; isset()��array_key_exists()�̈Ⴂ�́Aisset()��null�l���U��������̂ɑ��Aarray_key_exists()�͒l��null�ł���`����Ă���ΐ^�Ƃ��Ĉ����B �� in_array()��array_search() �z��ɒl�����邩�`�F�b�N $array = array(1, 3, 5); if (in_array(5, $array)) echo "5������܂����B"; if (in_array(5, $array, true)) echo "5������܂����B�i�^���`�F�b�N�j"; if (($key=array_search(5, $array)) !== false) echo "�L�[��{$key}�̒l��5�ł��B"; array_search()���ł́A�ŏ��ɒl����v�����L�[���P�����Ԃ��̂ŁA��v����L�[�S�����擾����ɂ�$sub = array_keys($array, 5)�Ƃ���K�v������B �� preg_grep() �p�^�[���ɊY������v�f���擾����B $array = preg_grep('/pattern/', $array); $array = preg_grep('/pattern/', $array, PREG_GREP_INVERT); // �}�b�`���Ȃ�����
�z��f�[�^���ǂ������`�F�b�N
�z��̗v�f����
sizeof()�̓G�C���A�X
�v�f�̗L�����`�F�b�N
isset()��array_key_exists()�̈Ⴂ�́Aisset()��null�l���U��������̂ɑ��Aarray_key_exists()�͒l��null�ł���`����Ă���ΐ^�Ƃ��Ĉ����B
�z��ɒl�����邩�`�F�b�N
array_search()���ł́A�ŏ��ɒl����v�����L�[���P�����Ԃ��̂ŁA��v����L�[�S�����擾����ɂ�$sub = array_keys($array, 5)�Ƃ���K�v������B
�p�^�[���ɊY������v�f���擾����B
�z��Q�Ɨp��foreach���[�v������B �� �z��̃L�[�ƒl���Q�� $array = array(1, 3, 5); foreach ($array as $key => $value) { echo "$key: $value\n"; // "0: 1", "1: 3", "2: 5" } foreach ($array as $value) { echo "$value\n"; // "1", "3", "5" } $hash = array('��' => '�x�m', '��' => '��', '�O' => '�Ȃ���'); foreach ($hash as $key => $value) { echo "$key: $value\n"; // "��: �x�m", "��: ��", "�O: �Ȃ���" } foreach ($hash as $value) { echo "$value\n"; // "�x�m", "��", "�Ȃ���" } foreach���[�v�ɂ����āA�u�L�[�ƒl�v�܂��́u�l�̂݁v���Q�Ƃ��邱�Ƃ��ł��܂��B "as"��foreach���[�v�݂̂Ŏg�p����L�[���[�h�ɂȂ�܂��B �� �z��̃L�[�݂̂��Q�� $array = array(1, 3, 5); foreach (array_keys($array) as $key) { echo "$key\n"; // "0", "1", "2" } $hash = array('��' => '�x�m', '��' => '��', '�O' => '�Ȃ���'); foreach (array_keys($hash) as $key) { echo "$key\n"; // "��", "��", "�O" } array_keys()�����g���ăL�[��l�Ƃ���z������Ă��܂��B���̐V�������������z��̒l���Q�Ƃ��Ă��邱�ƂɂȂ�܂��B �������A�V���Ȕz������Ă���̂ŃR�X�g���l������ȉ��̂悤�Ɂu$key => $value�v���g����$value���������������悤�ȋC������B �� �z��̃L�[�݂̂��Q�Ɓi���̂Q�j foreach ($array as $key => $value) { // $value������$key�݂̂��g�� } foreach ($array as $key => &$value) { // PHP5�ȍ~�Ŏg���郊�t�@�����X���g�����Ƃł���$value�l���c��ł����ׂɂȂ�Ȃ� } �������z��̒l���c��ȃf�[�^���Ƃ��Ȃ�̗ʂ̃f�[�^�R�s�[���p�����ă��X��������B ���������ꍇ�͂ł�����t�@�����X���g�����Ƃ��l���������悢�B
�z��Q�Ɨp��foreach���[�v������B
foreach���[�v�ɂ����āA�u�L�[�ƒl�v�܂��́u�l�̂݁v���Q�Ƃ��邱�Ƃ��ł��܂��B
"as"��foreach���[�v�݂̂Ŏg�p����L�[���[�h�ɂȂ�܂��B
array_keys()�����g���ăL�[��l�Ƃ���z������Ă��܂��B���̐V�������������z��̒l���Q�Ƃ��Ă��邱�ƂɂȂ�܂��B
�������A�V���Ȕz������Ă���̂ŃR�X�g���l������ȉ��̂悤�Ɂu$key => $value�v���g����$value���������������悤�ȋC������B
�������z��̒l���c��ȃf�[�^���Ƃ��Ȃ�̗ʂ̃f�[�^�R�s�[���p�����ă��X��������B ���������ꍇ�͂ł�����t�@�����X���g�����Ƃ��l���������悢�B
array()�ɂ��z�����͕ϐ��ɑ��������@�Ŕz������ $array = array(1, 3, 5); array()�͊��ł͂Ȃ��Č���\���ł͂��邪�A�z���Ԃ����̏ꍇ�ł��ϐ��ւ̑���̌`�Ŏ�邱�Ƃ��ł���B $array = func(); function func() { return array(1, 3, 5); } ���̑��Alist()���g���Ĕz��������@������B list($x, $y, $z) = func(); function func() { return array(1, 3, 5); } list()���g���ꍇ�ɂ́A�Ԃ��Ă���z��̗v�f�������炩���ߕ������Ă���ꍇ����Ȃ��Ǝg���Ȃ��B �������v�f�����z��������Ȃ������ꍇ�ɂ́uNotice: Undefined offset: 2 in /path/to/filename on line N�v�̂悤�Ȍx�����\�������B $s = 'aaa,bbb'; list($x, $y, $z) = explode(',', $s, 3); // 3���������݂���ő�2���������Ȃ炸�Ɍx�� ���͕K�v�ȗv�f���������B�s�v�ȑ���i�f�[�^�R�s�[�j���s��Ȃ����y���Ȃ�B $s = 'aaa,bbb,ccc'; list(,,$z) = explode(',', $s, 3); // "ccc" ���̑����G�Ȕz����A�l�X�g�ɂ���list()�Ŏ����@������܂��B list($x, list($y, $z)) = array(1, array(3, 5));
array()�ɂ��z�����͕ϐ��ɑ��������@�Ŕz������
array()�͊��ł͂Ȃ��Č���\���ł͂��邪�A�z���Ԃ����̏ꍇ�ł��ϐ��ւ̑���̌`�Ŏ�邱�Ƃ��ł���B
���̑��Alist()���g���Ĕz��������@������B
list()���g���ꍇ�ɂ́A�Ԃ��Ă���z��̗v�f�������炩���ߕ������Ă���ꍇ����Ȃ��Ǝg���Ȃ��B
�������v�f�����z��������Ȃ������ꍇ�ɂ́uNotice: Undefined offset: 2 in /path/to/filename on line N�v�̂悤�Ȍx�����\�������B
���͕K�v�ȗv�f���������B�s�v�ȑ���i�f�[�^�R�s�[�j���s��Ȃ����y���Ȃ�B
���̑����G�Ȕz����A�l�X�g�ɂ���list()�Ŏ����@������܂��B
�z��̍폜�́A�u�v�f���Ƃ̍폜�v�Ɓu�z��S�̂̍폜�v������B �� unset() $array = array(1, 3, 5); unset($array[1]); // 1�v�f���폜 foreach ($array as $key => $value) { echo "$key: $value\n"; // "0: 1", "2: 5" } $array[] = 100; // �v�f��lj� foreach ($array as $key => $value) { echo "$key: $value\n"; // "0: 1", "2: 5", "3: 100" } unset($array); // �S�����폜 foreach ($array as $key => $value) { echo "$key: $value\n"; // ����`�̂��̂��Q�Ƃ������̌x�����o�� } �폜�Ə��������A���ۂɂ͕ϐ��̊��蓖�Ă������Ƃ��ϐ��̔j���Ƃ��̕\��������Ă���B unset($array[0], $array[2])�Ƃ���Δ�є�тŗv�f�폜���s�����Ƃ��ł���B �� array() $array = array(1, 3, 5); $array = array(); // ��̔z������đ�� foreach ($array as $key => $value) { echo "$key: $value\n"; // unset()�ƈ���ċ�̔z����̂Ōx���Ȃ� } �V���ɐ���������̔z��������Ă���B �`�Ƃ��Ă�unset()���l�ɂ��ׂĂ̗v�f���폜���������ɂȂ�B �� array_shift() $array = array(1, 3, 5); $s = array_shift($array); // �擪�v�f���o�� foreach ($array as $key => $value) { echo "$key: $value\n"; // "0: 3", "1: 5" } �擪�v�f���o���ĕԂ��܂��B���̌��ʁA�z��͐V����0�Ԗڂ̗v�f����n�܂�悤�ɃX���C�h���Ă��܂��B ����Ƃ͋t�ɁA�擪�v�f�ɒlj�����array_unshift()��������B �� array_pop() $array = array(1, 3, 5); $s = array_pop($array); foreach ($array as $key => $value) { echo "$key: $value\n"; // "0: 1", "1: 3" } �����v�f���o���ĕԂ��܂��B���̌��ʁA�z��͖����v�f����������ď����Ă��܂��B ����Ƃ͋t�ɁA�����v�f�ɒlj�����array_push()�������邪�A$array[] = 'foo'�Œlj��������������B �� array_splice() $array = array(1, 3, 5, 7, 9); $sub = array_splice($array, 3); // 0����n�܂�3�Ԗڗv�f�ȍ~����� foreach ($array as $key => $value) { echo "$key: $value\n"; // "0: 1", "1: 3", "2: 5" } foreach ($sub as $key => $value) { echo "$key: $value\n"; // "0: 7", "1: 9" } $array = array(1, 3, 5, 7, 9); $sub = array_splice($array, 1, 2); // 0����n�܂�1�Ԗڗv�f����2����� foreach ($array as $key => $value) { echo "$key: $value\n"; // "0: 1", "1: 7", "2: 9" } foreach ($sub as $key => $value) { echo "$key: $value\n"; // "0: 3", "1: 5" } �z��̕����v�f���o���B���̌��ʁA���̔z��͕����v�f����������Ă���B
�z��̍폜�́A�u�v�f���Ƃ̍폜�v�Ɓu�z��S�̂̍폜�v������B
�폜�Ə��������A���ۂɂ͕ϐ��̊��蓖�Ă������Ƃ��ϐ��̔j���Ƃ��̕\��������Ă���B
unset($array[0], $array[2])�Ƃ���Δ�є�тŗv�f�폜���s�����Ƃ��ł���B
�V���ɐ���������̔z��������Ă���B �`�Ƃ��Ă�unset()���l�ɂ��ׂĂ̗v�f���폜���������ɂȂ�B
�擪�v�f���o���ĕԂ��܂��B���̌��ʁA�z��͐V����0�Ԗڂ̗v�f����n�܂�悤�ɃX���C�h���Ă��܂��B
����Ƃ͋t�ɁA�擪�v�f�ɒlj�����array_unshift()��������B
�����v�f���o���ĕԂ��܂��B���̌��ʁA�z��͖����v�f����������ď����Ă��܂��B
����Ƃ͋t�ɁA�����v�f�ɒlj�����array_push()�������邪�A$array[] = 'foo'�Œlj��������������B
�z��̕����v�f���o���B���̌��ʁA���̔z��͕����v�f����������Ă���B
�t�B���^�[�Ƃ́A�����ɍ����v�f�𒊏o���邱�� �� array_filter() ��������p�̃R�[���o�b�N�������i�^���U��Ԃ��j // �R�[���o�b�N�� function filter($s) { return $s < 10; } // �t�B���^�[��ʂ������ʂ� $array = array(5, 8, 12, 34); $sub = array_filter($array, "filter"); // 5, 8 ��x�����ĂȂ��悤�ȃR�[���o�b�N�����`����̂����ʂ��������Ȃ�悤�Ȃ�create_function()���Œ�`�����������ړn���悢�B �� array_unique() �z��d�������l���폜���� $array = array(1, 3, 5, 'one' => 'fuji', 3, 2, 1); $sub = array_unique($array); foreach ($sub as $key => $value) { echo "$key: $value"; // "0: 1" "1: 3" "2: 5" "one: fuji" "4: 2" } �L�[�ƒl�̊W�͈ێ�����Ă���B
�t�B���^�[�Ƃ́A�����ɍ����v�f�𒊏o���邱��
��������p�̃R�[���o�b�N�������i�^���U��Ԃ��j
��x�����ĂȂ��悤�ȃR�[���o�b�N�����`����̂����ʂ��������Ȃ�悤�Ȃ�create_function()���Œ�`�����������ړn���悢�B
�z��d�������l���폜����
�L�[�ƒl�̊W�͈ێ�����Ă���B
�� array_walk() �z��̑S�Ă̗v�f�Ƀ��[�U����K�p���� // ���[�U��`���i�������͒l�A�������̓L�[�ƌ��܂��Ă���j function alter(&$item, $key, $prefix) { // ���̒l���ς��悤�Ƀ��t�@�����X�n�� $item = $prefix . $item; } $array = array("one", "two", "three"); array_walk($array, "alter", "foo_"); echo $array[0]; // "foo_one" �� array_map() �w�肵���z��̗v�f�ɃR�[���o�b�N����K�p���� function foo($s) { return $s . $s; } $array = array(1, 3, 5); $sub = array_map("foo", $array); echo $sub[0]; // "11" array_walk()�Ƃ̈Ⴂ�́A���ʂ�z��Ŏ擾�ł��邱�� �v�f���̓��������̔z������ɏ������邱�Ƃ��ł���B function func1($s, $t) { return $s . "+" . $t; } function func2($s, $t) { return array($s => $t); } $array1 = array(1, 3, 5); $array2 = array("foo", "bar", "fuga"); $sub1 = array_map("func1", $array1, $array2); $sub2 = array_map("func2", $array1, $array2); echo $sub1[0]; // "1+foo" echo $sub2[0][1]; // "foo" ���̑��A��������null�Ƃ��邱�Ƃɂ��z��̔z����ł���B $array1 = array(1, 3, 5); $array2 = array("foo", "bar", "fuga"); $sub = array_map(null, $array1, $array2); echo $sub[0][0]; // 1 echo $sub[0][1]; // "foo" echo $sub[1][1]; // "bar" echo $sub[2][1]; // "fuga"
�z��̑S�Ă̗v�f�Ƀ��[�U����K�p����
�w�肵���z��̗v�f�ɃR�[���o�b�N����K�p����
array_walk()�Ƃ̈Ⴂ�́A���ʂ�z��Ŏ擾�ł��邱��
�v�f���̓��������̔z������ɏ������邱�Ƃ��ł���B
���̑��A��������null�Ƃ��邱�Ƃɂ��z��̔z����ł���B
�� array_reverse() �v�f���t���ɂ����z���Ԃ� foreach (array_reverse(array(1, 3, 5)) as $value) { echo $value; // 5, 3, 1 } �� shuffle() �z����V���b�t������ $array = array(1, 3, 5, 7, 9); shuffle($array); foreach ($array as $value) { echo $value; // �Ⴆ��7, 3, 5, 1, 9 } �� asort()��arsort() �A�z�L�[�Ɨv�f�Ƃ̊W���ێ����z����\�[�g���� $array = array("one" => "fuji", "two" => "taka", "three" => "nasubi"); asort($array); // ���� foreach ($array as $key => $value) { echo "$key: $value"; // "one: fuji" "three: nasubi" "two: taka" } arsort($array); // �~�� foreach ($array as $key => $value) { echo "$key: $value"; // "two: taka" "three: nasubi" "one: fuji" } �l�Ɋւ��ăA���t�@�x�b�g���Ƀ\�[�g �� ksort()��krsort() �z����L�[�Ń\�[�g���� $array = array("one" => "fuji", "two" => "taka", "three" => "nasubi"); ksort($array); // ���� foreach ($array as $key => $value) { echo "$key: $value"; // "one: fuji" "three: nasubi" "two: taka" } krsort($array); // �~�� foreach ($array as $key => $value) { echo "$key: $value"; // "two: taka" "three: nasubi" "one: fuji" } �L�[�Ɋւ��ăA���t�@�x�b�g���Ƀ\�[�g �� sort()��rsort() �z����\�[�g���� $array = array("one" => "fuji", "two" => "taka", "three" => "nasubi"); sort($array); // ���� foreach ($array as $key => $value) { echo "$key: $value"; // "0: fuji" "1: nasubi" "2: taka" } rsort($array); // �~�� foreach ($array as $key => $value) { echo "$key: $value"; // "0: taka" "1: nasubi" "2: fuji" } �L�[�����āA�l�Ɋւ��ăA���t�@�x�b�g���Ƀ\�[�g���z���0�Ԗڂ���Ċ��蓖�Ă��s���B
�v�f���t���ɂ����z���Ԃ�
�z����V���b�t������
�A�z�L�[�Ɨv�f�Ƃ̊W���ێ����z����\�[�g����
�l�Ɋւ��ăA���t�@�x�b�g���Ƀ\�[�g
�z����L�[�Ń\�[�g����
�L�[�Ɋւ��ăA���t�@�x�b�g���Ƀ\�[�g
�z����\�[�g����
�L�[�����āA�l�Ɋւ��ăA���t�@�x�b�g���Ƀ\�[�g���z���0�Ԗڂ���Ċ��蓖�Ă��s���B
�� array_rand() �z���ȏ�̗v�f�������_���Ɏ擾���� $n = array_rand(array(1, 3, 5, 7, 9)); // �ǂꂩ����Ԃ� $array = array_rand(array(1, 3, 5, 7, 9), 3); // �O���Ԃ� ���ӂ��ׂ��́A�l�ł͂Ȃ��ăL�[�i�Y�����j���Ԃ���邱�ƁB �� array_slice() �z��̈ꕔ��W�J���� $array = array(1, 3, 5, 7, 9); $sub = array_slice($array, 0); // 1 3 5 7 9 $sub = array_slice($array, -2); // 7 9 $sub = array_slice($array, 1, 3); // 3 5 7 �� implode() �z��̒l��A�����Ĉ�̕�����Ƃ��ĕԂ� $array = array('Hello', 'my', 'friend'); echo implode(" ", $array); // "Hello my friend" echo implode($array); // "Hellomyfriend" �L�[�������Ă����������B join()�̓G�C���A�X
�z���ȏ�̗v�f�������_���Ɏ擾����
���ӂ��ׂ��́A�l�ł͂Ȃ��ăL�[�i�Y�����j���Ԃ���邱�ƁB
�z��̈ꕔ��W�J����
�z��̒l��A�����Ĉ�̕�����Ƃ��ĕԂ�
�L�[�����������������B
join()�̓G�C���A�X