Позиціювання всередині масиву
Ці функції працюють з вказівником, який за замовчуванням завжди вказує на перший елемент в масиві.
current() або її псевдонім pos()
Повертає значення поточного елемнту.
|
|
$a = array('перший','другий', 'третій');
$element = current($a); // $element = 'перший' |
next()
Переміщує вказівник на наступний елемент. Повертає значення елементу або FALSE, якщо елементів більше немає.
|
|
$a = array('перший','другий', 'третій');
$next = next($a); // $next = 'другий'
$element = current($a); // $element = 'другий' |
prev()
Переміщує вказівник на попередній елемент. Повертає значення елементу або FALSE, якщо елементів більше немає.
|
|
$a = array('перший','другий', 'третій');
$next = next($a); // $next = 'другий'
$next = next($a); // $next = 'третій'
$prev = prev($a); // $prev = 'другий'
$current = current($a); // $current = 'другий' |
end()
Переміщує вказівник на останній елемент. Повертає значення елементу або FALSE, якщо масив порожній.
|
|
$a = array('перший','другий', 'третій');
$end = end($a); // $end = 'третій'
$current = current($a); // $current = 'третій' |
reset()
Переміщує вказівник на перший елемент. Повертає значення елементу або FALSE, якщо масив порожній.
|
|
$a = array('перший','другий', 'третій');
$end = end($a); // $end = 'третій'
reset($a);
$current = current($a); // $current = 'перший' |
each()
Повертає пару – Ключ/Значення, а саме масив з ключами 1, value, 0, key. Де 1 та value – Значення, а 0 та key – Ключ. Вказівник переводиться на наступний елемент. Якщо вказівник минув останній елемент, функція поверне FALSE.
|
|
$a = array('перший','другий', 'третій');
$e = each($a); // $e = array(
// 1 => 'перший',
// 'value' => 'перший',
// 0 => 0,
// 'key' => 0
// )
$current = current($a); // $current = 'другий' |
key()
Повертає ключ поточного елементу.
|
|
$a = array('перший','key' => 'другий', 'третій');
$k = key($a); // $k = 0
next($a);
$k = key($a); // $k = 'key' |
foreach()
Функція відноситься до циклів але працює з масивами (та об’єктами) і вказівником масиву. Ця фукція дає можливість легко перебирати всі елементи масиву.
|
|
$arr = array(1, 2, 'key' => 3, 4);
foreach ($arr as $key => $value)
{
echo "$key : $value ";
} |
Результатом роботи буде:
0 : 1 1 : 2 key : 3 2 : 4
Сортування
sort()
Сортує за зростанням. Сприймає масив як список, при цьому ключі не зберігаються. Має службовий параматр sort_flags, який визначає як буде працювати функція.
Sort_flags:
- SORT_REGULAR – звичайне поривняння (не змінюючі тіп елементів)
- SORT_NUMERIC – поривняння елементив як числові
- SORT_STRING – поривняння елементив як текстові
|
|
$a = array(3, 4, 1, 2);
$s = sort($a); // $s = array(1, 2, 3, 4) |
rsort()
Сортує за зростанням. Сприймає масив як список, при цьому ключі не зберігаються. Має службовий параматр sort_flags, як і функція sort()
|
|
$a = array(3, 4, 1, 2);
$s = rsort($a); // $s = array(4, 3, 2, 1) |
asort()
Сортує за зростанням елементи асоциативниого масиву. Має службовий параматр sort_flags, як і функція sort()
|
|
$a = array("d" => "lemon",
"a" => "orange",
"b" => "banana",
"c" => "apple");
/*
* $s = array("c" => "apple",
* "b" => "banana",
* "d" => "lemon",
* "a" => "orange");
*/
$s = asort($a); |
arsort()
Сортує за спаданням елементи асоциативниого масиву. Має службовий параматр sort_flags, як і функція sort()
|
|
$a = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
$s = arsort($a); // $s = array("a" => "orange", "d" => "lemon", "b" => "banana", "c" => "apple") |
ksort()
Сортує за зростанням ключі асоциативниого масиву. Має службовий параматр sort_flags, як і функція sort()
|
|
$a = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
$s = ksort($a); // $s = array(
// "a" => "orange",
// "b" => "banana",
// "c" => "apple",
// "d" => "lemon"
// ) |
krsort()
Сортує за спаданням ключі асоциативниого масиву. Має службовий параматр sort_flags, як і функція sort()
|
|
$a = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
$s = krsort($a); // $s = array(
// "d" => "lemon",
// "c" => "apple",
// "b" => "banana",
// "a" => "orange"
// ) |
shuffle()
Перемішує елементі масиву. При цьому існуючі ключі відкидаються та заміняються на 0,1,2…
|
|
$a = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
shuffle($a); // $a = array(
// 0 => "lemon",
// 1 => "apple",
// 2 => "banana",
// 3 => "orange"
// ) |
natsort()
Природнє сортування, тобто те яке звикли бачити люди.
|
|
$a = array("img12.png", "img100.png", "img02.png", "img1.png");
natsort($a); // $a = array(
// 2 => "img02.png",
// 3 => "img1.png",
// 0 => "img12.png",
// 1 => "img100.png"
// ) |