ГоловнаКаталогБлогРейтингЕ-Пошта 
 
 
Зробити домашньою у вибране  

  Функції обробки масивів  
array
array_walk
asort
arsort
count
current
each
end
key
ksort
list
next
pos
prev
reset
rsort
sizeof
sort
uasort
uksort
usort


array

array – Створює масив

Опис:

array array(...);

Повертає масив параметрів. Параметри можуть бути дані по індексу при використанні опрератора =>.

Пам’ятайте, що array() - це мовна конструкція, і не є регулярним виразом.

Наступний приклад показує як створювати двовимірний масив, як підібрати ключі для асоціативного масиву, і як пропускати та продовжувати числові індекси в нормальному масиві.

Приклад 1.
$fruits = array(
    "fruits" => array("a"=>"orange","b"=>"banana","c"=>"apple"),
    "numbers" => array(1, 2, 3, 4, 5, 6)
    "holes" => array("first", 5 => "second", "third")
);

Див. також:
list().


array_walk

array_walk - застосування функції для кожного члена масиву.

Опис:

int array_walk(array arr, string func);

Присвоює функцію з іменем func для кожного елемента масиву arr. Елементи проходять як перший аргумент функції func; якщо func потребує більше чім один аргумент, буде згенеровано попередження кожний раз, коли array_walk() викликає func. Ці попередження можна подавити за допомогою додавання знаку '@' при виклику array_walk(), або при використанні error_reporting().

Пам’ятайте, що func буде працювати з елементами масиву arr, так що всі зміни зроблені над елементами масиву будуть змінами для самого масиву.

Приклад 1

$fruits = array("d"=>"lemon","a"=>"orange","b"=>"banana","c"=>"apple");

function test_alter( $item1 )
  {
    $item1 = 'bogus';
  }

function test_print( $item2 )
  {
    print("$item2<br>\n");
  }

array_walk( $fruits, 'test_print' );
array_walk( $fruits, 'test_alter' );
array_walk( $fruits, 'test_print' );

Див. також: each() та list().


asort

arsort – Сортування масиву з підтримкою індексних зв’язків.

Опис:

void asort(array array);

Ця функція сортує масив так що індекси масиву підтримують їх кореляцію з елементами масиву з яким вони поєднуються. Це використовується, в основному, для сортування асоціативних масивів, де має значення фактичний елементний порядок.

Приклад 1

$fruits = array("d"=>"lemon","a"=>"orange","b"=>"banana","c"=>"apple");
asort($fruits);
for(reset($fruits); $key = key($fruits); next($fruits))
  {
    print("fruits[$key] = ".$fruits[$key]."\n");
  }

Приклад нам показує: fruits[c] = apple fruits[b] = banana fruits[d] = lemon fruits[a] = orange
Фрукти показані в алфавітному порядку, та підтримуються зв’язані з ними індекси.

Див. також: arsort(), rsort(), ksort(), та sort().


arsort

arsort – Сортування масиву в оберненому порядку та підтримка індексних зв’язків.

Опис:

void arsort(array array);

Ця функція сортує масив так що індекси масиву підтримують їх кореляцію з елементами масиву з яким вони поєднуються. Це використовується, в основному, для сортування асоціативних масивів, де має значення фактичний елементний порядок.

Приклад 1

$fruits = array("d"=>"lemon","a"=>"orange","b"=>"banana","c"=>"apple");
arsort($fruits);
for(reset($fruits); $key = key($fruits); next($fruits))
  {
    print("fruits[$key] = ".$fruits[$key]."\n");
  }

Приклад нам показує: fruits[a] = orange fruits[d] = lemon fruits[b] = banana fruits[c] = apple
Фрукти показані в зворотному алфавітному порядку, та підтримуються зв’язані з ними індекси.

Див. також: asort(), rsort(), ksort(), та sort().


count

count - повертає кількість елементів

Опис:

int count(mixed var);

Повертає число елементів змінної var, яка є масивом.
Повертає 0, якщо змінна не встановлена.
Повертає 1, якщо змінна не є масивом.

Див. також:
sizeof(), isset() та is_array().


current

current – повертає поточний елемент масиву.

Опис:

mixed current(array array);

Кожна змінна-масив має внутрішній показник, який показує на один зі своїх елементів. Крім того, всі елементи в масиві зв’язані двонапрямленим списком вказівників для додаткових цілей. Внутрішній вказівник показує на перший елемент, який включався до масиву, поки Ви не виконали одну із функцій, які модифікують цей вказівник у масиві.

Функція current() просто повертає елемент масиву, на який в даний момент показує внутрішній показник. Він ніяк не змінює положення вказівника. Якщо внутрішній показник показує на кінець списку елементів, current() повертає false(хибність).

Увага: якщо масив містить пусті елементи (0 або порожню стрічку("")), то функція повертає "false" для кожного із них. Це показує, що поточний елемент має нульове значення або Ви дійшли до кінця масиву. Для того, щоб правильно переглядати масив, використовуйте функцію
each().

Див. також: end(), next(), prev() і reset().


each

each - повертає наступну пару ключ/значення із масиву

Опис:

array each(array array);

Повертає наступну пару ключ/значення із масиву array та передбачає курсор масиву. Ця пара повертається в чотирьох-елементному масиві, з ключами 0, 1, key, та value. Елементи 0 та key - кожне містить ключове ім’я елемента масиву, а 1 та value містять дані.

Приклад 1

$foo = array( "bob", "fred", "jussi", "jouni" );
$bar = each( $foo );

$bar тепер містить наступну пару ключ/значення:
0 => 0
1 => 'bob'
key => 0
value => 'bob'


$foo = array( "Robert" => "Bob", "Seppo" => "Sepi" );
$bar = each( $foo );

$bar тепер містить наступну пару ключ/значення:
0 => 'Robert'
1 => 'Bob'
key => 'Robert'
value => 'Bob'

each(), як правило, використовується разом з
list() щоб проглянути масив.

Приклад 2

print("Змінні, що передались методом POST:<br>");
while ( list( $key, $val ) = each($_POST) )
  {
    print("$key => $val<br>");
  }

Див. також: key(), list(), current(), reset(), next(), також prev().


end

end – встановлює внутрішній показник масиву на останньому елементі

Опис:

end(array array);

end() встановлює внутрішній показник масиву array на останній елемент.

Див. також:
current(), each(), next() а також reset()


key

key - вибирає ключ із асоціативного масиву

Опис:

mixed key(array array);

key() Повертає індекс елемента в текучий позиції масиву.

Див. також:
current(), next()


ksort

ksort - Сортує масив по ключам.

Опис:

int ksort(array array);

Сортує масив по ключу, використовуючи ключ для кореляції даних. Це корисно головним образом для асоціативного масиву.

Прклад 1

$fruits = array("d"=>"lemon","a"=>"orange","b"=>"banana","c"=>"apple");
ksort($fruits);
for(reset($fruits); $key = key($fruits); next($fruits))
  {
    print("fruits[$key] = ".$fruits[$key]."\n");
  }
Даний приклад повинен показувати: fruits[a] = orange fruits[b] = banana fruits[c] = apple fruits[d] = lemon

Див. також
asort(), arsort(), sort(), та rsort().


list

list – зв'язує змінні, так, що вони сприймаються як масив

Опис:

void list(...);

Подібно array(), функція list в дійсності є мовною конструкцією, а не функцією list(). Використовується для зв'язку списку змінних однією операцією.

Приклад 1

$result = mysql($conn, "SELECT id, name, salary FROM employees");
while (list($id, $name, $salary) = mysql_fetch_row($result))
{
  print("<tr>\n".
         "<td><a href=\"info.php3?id=$id\">$name</a></td>\n".
         "<td>$salary</td>\n".
         "</tr>\n");
}

Див. також:
each(), array().


next

next - змінює внутрішній вказівник масиву

Опис:

mixed next(array array);

Повертає наступний елемент масиву від поточної позиції внутрішнього вказівника масиву, або "хибність"(false) якщо немає більше елементів.

Увага: якщо масив містить порожні елементи, то дана функція повертає "хибність"(false) і для ціх елементів. Щоб правильно проглянути масив, якій може містити пусті елементи, дивіться функцію
each().

next() поводить себе схоже до current(), із однією лише різницею. Він переміщує внутрішній вказівник масиву, на один елемент вперед перед тим, як повернути елемент. Це означає, що він повертає значення наступного елемента, і пересуває на нього внутрішній вказівник масиву. Якщо при зверненні до наступного елементу виявиться кінець масиву - next() повертає "хибність"(false).

Див. також: current(), end(), prev() і reset()


pos

pos - повертає поточний елемент масиву

Опис:

mixed pos(array array);

Дана функція являється псевдонім для
current().

Див. також: current(), end(), next(), prev() і reset()


prev

prev - змінює внутрішній вказівник масиву
Опис:

mixed prev(array array);

Повертає попередній елемент масиву, або "хибність"(false), якщо перед поточним нема більше елементів.

Увага: якщо масив містить порожні елементи, то дана функція повертає "хибність"(false) і для ціх елементів. Щоб правильно проглянути масив, якій може містити пусті елементи, дивіться функцію
each().

prev() поводить себе подібно до функції next(), за виключенням того що він переводить внутрішній вказівник масиву на одну позицію назад, а не вперед.

Див. також: current(), end(), next() і reset()


reset

reset – встановлює внутрішній вказівник масиву на першому елементі

Опис:

mixed reset(array array);

reset() встановлює внутрішній вказівник масиву на перший елемент.
reset() повертає перший елемент масиву

Див. також:
current(), end(), next() та prev()


rsort

rsort – сортує масив в зворотньому порядку

Опис:

void rsort(array array);

Сортує масив в зворотному порядку (по спаданню)

Приклад 1

$fruits = array("lemon","orange","banana","apple");
rsort($fruits);
for(reset($fruits); ($key,$value) = each($fruits); )
  {
    print("fruits[$key] = ".$value."\n");
  }

Даний приклад поверне: fruits[0] = orange fruits[1] = lemon fruits[2] = banana fruits[3] = apple
Фрукти відсортовані в оберненому алфавітному порядку.

Див. також:
arsort(), asort(), ksort(), sort() та usort().


sizeof

sizeof – повертає розмір масиву

Опис:

int sizeof(array array);

Повертає число елементів списку.

Див. також:
count()


sort

sort – сортує масив

Опис:

void sort(array array);

Дана функція сортує масив – всі елементи по закінченню її роботи будуть розміщені по зростанню.

Приклад 1

$fruits = array("lemon","orange","banana","apple");
sort($fruits);
for(reset($fruits); $key = key($fruits); next($fruits))
  {
    print("fruits[$key] = ".$fruits[$key]."\n");
  }

Даний приклад повертає: fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange
Фрукти будуть відсортовані по зростанню, тобто в алфавітному порядку.

Див. також:
arsort(), asort(), ksort(), rsort() та usort().


uasort

uasort - сортує масив з використанням функцій порівняння, визначених користувачем, та підтримкою індексації

Опис:

void uasort(array array, function cmp_function);

Дана функція сортує масив так, що індекси масиву підтримують їх кореляцію з елементами масиву з якою вони зв'язуються. Тобто при такому сортуванні використовуються індекси. Функцію порівняння задає користувач.

Див. також:
arsort(), asort(), ksort(), rsort(), sort() та usort().


uksort

uksort – cортує масив по ключах з використанням функції порівняння, заданої користувачем

Опис:

void uksort(array array, function cmp_function);

Дана функція відсортує ключі масиву використовуючи визначену користувачем функцію порівняння. Якщо масив, який Ви хочете відсортувати, повинен сортуватися за деякими нетривіальними критеріями, Ви повинні використовувати цю функцію.

Приклад 1

function mycompare($a, $b)
  {
    if ($a == $b) return 0;
    return ($a > $b) ? -1 : 1;
}
$a = array(4 => "four", 3 => "three", 20 => "twenty", 10 => "ten");
uksort($a, mycompare);
while(list($key, $value) = each($a))
  {
    print("$key: $value\n");
  }

Приклад поверне: 20: twenty 10: ten 4: four 3: three

Див. також:
arsort(), asort(), ksort(), rsort(), sort() та usort().


usort

usort – сортує масив по значенням, використовуючи задану користувачем функцію порівняння

Опис:

void usort(array array, function cmp_function);

Ця функція відсортує масив по значенню використовуючи функції порівняння, задані користувачем. Якщо масив, який Ви хочете відсортувати, повинен сортуватися за деякими нетривіальними критеріями, Ви повинні використати цю функцію.

Приклад 1

function cmp($a,$b)
  {
    if ($a == $b) return 0;
    return ($a > $b) ? -1 : 1;
  }
$a = array(3,2,5,6,1);
usort($a, cmp);
while(list($key,$value) = each($a))
  {
    print("$key: $value\n");
  }

Приклад поверне: 0: 6 1: 5 2: 3 3: 2 4: 1
Очевидно, що в цьому тривіальному випадку функція rsort() була б більше відповідною.

Див. також:
arsort(), asort(), ksort(), rsort() та sort().





  Логін:
  Пароль:
Книга Фріланс на західному ринку
Книга Фріланс на західному ринку

APServer | SiMan CMS | Лічильник відвідувань | Тека сайтів | Рейтинг | Форум | Download | Шаблони сторінок | Посібник Smarty | Підручник PHP | Статті/Огляди