Хелпер по массивам  

Вспомогательный файл содержит функции, которые помогают в работе с массивами.

Подключение хелпера  

Этот хелпер подключается следующей строчкой кода:


$this->load->helper('array');

Доступные функции  

Доступны следующие функции:

element($item, $array[, $default = NULL])  
Параметры:
  • $item (строка) – Элемент для выборки из массива
  • $array (массив) – Входящий массив
  • $default (булев) – Что вернуть если массива нет
Возвращает:

NULL при неудаче или элемент массива.

Возвращаемый тип:

смешанный

Позволяет извлечь элемент из массива. Функция проверяет, существует ли индекс массива и имеет ли он значение. Если значение существует, то оно врзвращается. Если значение не существует то вернет NULL или же значение, которое вы установили третьим параметром.

Пример:

$array = array(
        'color' => 'red',
        'shape' => 'round',
        'size'  => ''
);

echo element('color', $array); // вернет "red"
echo element('size', $array, 'foobar'); // вернет "foobar"
elements($items, $array[, $default = NULL])  
Параметры:
  • $item (строка) – Элемент для выборки из массива
  • $array (массив) – Входящий массив
  • $default (булев) – Что вернуть если массива нет
Возвращает:

NULL при неудаче или элемент массива.

Возвращаемый тип:

смешанный

Позволяет извлечь ряд элементов из массива. Функция проверяет, существует ли каждый из индексов массива. Если индекс не существует, то вернет NULL или же значение, которое вы установили третьим параметром.

Example:

$array = array(
        'color' => 'red',
        'shape' => 'round',
        'radius' => '10',
        'diameter' => '20'
);

$my_shape = elements(array('color', 'shape', 'height'), $array);

The above will return the following array:

array(
        'color' => 'red',
        'shape' => 'round',
        'height' => NULL
);

Третьим параметром можете установить любое удобное для вас значение.


$my_shape = elements(array('color', 'shape', 'height'), $array, 'foobar');

В случае указанном выше будет получен массив:

array(
        'color'         => 'red',
        'shape'         => 'round',
        'height'        => 'foobar'
);

Полезно при отправке $_POST массива в одну из ваших Моделей (Models). Это предотвращает отправку дополнительных данных POST, которые не следует затрагивать в БД.

$this->load->model('post_model');
$this->post_model->update(
        elements(array('id', 'title', 'content'), $_POST)
);

Это гарантирует, что обновится только ID, название и поле содержимого в БД.

random_element($array)  
Параметры:
  • $array (массив) –Входящий массив
Возвращает:

Случайный элемент из массива

Возвращаемый тип:

смешанный

Принимает массив в качестве входных данных и возвращает случайный элемент из него.

Пример использования:

$quotes = array(
        "I find that the harder I work, the more luck I seem to have. - Thomas Jefferson",
        "Don't stay in bed, unless you can make money in bed. - George Burns",
        "We didn't lose the game; we just ran out of time. - Vince Lombardi",
        "If everything seems under control, you're not going fast enough. - Mario Andretti",
        "Reality is merely an illusion, albeit a very persistent one. - Albert Einstein",
        "Chance favors the prepared mind - Louis Pasteur"
);

echo random_element($quotes);