[DAN]
Старожил PHPClub
array_slice и версии php
Вобщем тут обнаружил некоторое неудобство в функции array_slice().
Дело в том, что в мане сказано про некий опциональный параметр preserve_keys, который оставляет ассоциацию между данными и их ключами в срезе массива.
Но этот параметр работает только с 5-й версии php.
Стояла следующая задача: получить первые n элементов массива, и при этом сохранить ассоциативность значений и их индексов (ключей).
Так вот, на ум пришло вот такое решение для 4-ки
Вообще, имхо, удобное решение, позволяющее сохранять ассоциотивность для любого среза массива.
Стоит поиграться с параметром $n и возвращаемой "частью" массива, получаемого от array_chunk().
Может кому будет полездно. А может кто предложет более изящное (чем на php.net) решение.
Вобщем тут обнаружил некоторое неудобство в функции array_slice().
Дело в том, что в мане сказано про некий опциональный параметр preserve_keys, который оставляет ассоциацию между данными и их ключами в срезе массива.
Но этот параметр работает только с 5-й версии php.
Стояла следующая задача: получить первые n элементов массива, и при этом сохранить ассоциативность значений и их индексов (ключей).
Так вот, на ум пришло вот такое решение для 4-ки
PHP:
<?php
$input = array("a", "b", "c", "d", "e");
$output = current(array_chunk($input, $n, TRUE));
?>
Стоит поиграться с параметром $n и возвращаемой "частью" массива, получаемого от array_chunk().
Может кому будет полездно. А может кто предложет более изящное (чем на php.net) решение.