Установи Linux! Стань свободным!
Онлайн всего: 1 | Посетители: 0 | Боты: 1
Дата 22.07.2026 Время: 23:38
Ваш IP: 216.73.217.177
Загрузка сервера: 0.38
old.ubuntu-desktop.ru - Замена элементов массива элементами из другого массива - PHP    Главная > Веб-программирование > PHP

Замена элементов массива элементами из другого массива

Для замены элементов массива элементами из другого массива или массивов используется функция array_replace().

Если ключ из первого массива присутствует во втором массиве, его значение заменяется на значение из второго массива. Если ключ есть во втором массиве, но отсутствует в первом - он будет создан в первом массиве. Если ключ присутствует только в первом массиве, то сохранится как есть. Если для замены передано несколько массивов, они будут обработаны в порядке передачи и более поздние массивы будут перезаписывать значения из предыдущих.

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

echo '<pre>';
$a = array("кино", "музыка", "театр", "цирк", "школа");
$b = array(0=>"фильм", 3=>"песня", 4=>"гитара", 5=>"патифон", 6=>"башня");
$c = array(3=>"23", "80", "999", 6=>"транзистор", "диод");
$arr = array_replace($a, $b, $c);
print_r ($arr);
echo '</pre>';
Array
(
    [0] => фильм
    [1] => музыка
    [2] => театр
    [3] => 23
    [4] => 80
    [5] => 999
    [6] => транзистор
    [7] => диод
)

Если нам например необходимо заменить один элемент массива номер ключа которого нам не известен, то можно его заменить зная его значение:

echo '<pre>';
$a = array("кино", "музыка", "театр", "цирк", "школа");
$key = array_search("театр",$a); // находим элемент массива по значению и извлекаем его ключ
$b[$key] = "STOP"; // присваиваем ключ новому значению 
$arr = array_replace($a, (array)$b); // замена элемента массива новым значением
print_r ($arr);
echo '</pre>';
Array
(
    [0] => кино
    [1] => музыка
    [2] => STOP
    [3] => цирк
    [4] => школа
)
Рейтинг
<< Предыдущая статьяСледующая статья >>
  2017-08-21 23:28:10 | liman28 | Категория: PHP | Просмотров: 77
Комментарии
E-mail (не будет опубликован)
Имя
Комментарий
Введите число с картинки:     
Случайные статьи

   array_fill - заполнение массива определенными значениями
Функция array_fill() заполняет массив определенными значениями, нумерация элементов массива с определенными значениями указывается в параметре функции (начальный индекс). Пример использования: $arr = array_fill(23, 3, 'php'); print_r($arr); Array ( [23] => php [24] => php [25] =>…
  2017-09-01 23:02:08 | Категория: PHP
   FrostWire — свободный P2P-клиент для файлообменной сети Gnutella и BitTorrent
FrostWire — свободный P2P-клиент для файлообменной сети Gnutella и BitTorrent. Программа написана на языке Java и является кроссплатформенным программным обеспечением, построенная на другом популярном клиенте Gnutella LimeWire. FrostWire является абсолютно бесплатной и распространяется под лицензией GNU General Public License.   Программа FrostWire является как бы симбиозом торрента с…
  2017-08-04 10:28:34 | Категория: Интернет
   Установка ядра Linux Kernel 3.13
Установка ядра Linux Kernel 3.13 1. Откройте терминал, скопируйте и выполните одну из команд, согласно архитектуры вашей системы/компьютера, на свой страх и риск:   Для 32-bit (одной командой): cd /tmp && wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13-rc8-trusty/linux-headers-3.13.0-031300rc8-generic_3.13.0-031300rc8.201401120535_i386.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13-rc8-trusty/linux-headers-3.13.0-031300rc8_3.13.0-031300rc8.201401120535_all.deb…
  2017-08-04 08:54:29 | Категория: Система
   Установка драйвера Canon CAPT для принтеров Canon LBP
Установка драйвера Linux CAPT Printer Driver v2.60-1 для принтеров Canon LBP на Ubuntu 12.04, 12.10, 13.04, 13.10, 14.04, 32-битной и 64-битной архитектуры. Поддерживаемые принтеры:LBP-1210, LBP-1120, LBP-810, LBP2900, LBP3000, LBP3010, LBP3018, LBP3050,  LBP3100, LBP3108, LBP3150, LBP3200, LBP3210, LBP3250, LBP3300, LBP3310, LBP3500, LBP5000, LBP5050, LBP5100, LBP5300, LBP6000, LBP6018, LBP6020, LBP6020B, LBP6200, LBP6300, LBP6300n, LBP6310, LBP7010C, LBP7018C, LBP7200C, LBP7210C, LBP9100C, LBP9200C. Для установки драйвера необходимо в терминале выполнить следующие команды: cd…
  2017-08-12 20:06:41 | Категория: Драйвера
   УСКОРЕНИЕ РАБОТЫ LINUX UBUNTU
Рассмотрим параметры vm.vfs_cache_pressure — он указывает размер используемого дискового кэша и vm.swappiness — этот параметр определяет при каком % свободной оперативной памяти будет задействован SWAP (виртуальная память). Параметры vm.vfs_cache_pressure: 0 — не кэшировать ничего. 100 — значение по-умолчанию. >100 — агрессивно кэшировать дисковые операции. Рекомендуется устанавливать значение 1000 и больше для…
  2017-08-04 08:46:42 | Категория: Система

Вверх