В связи с переходом на новый движок... возможны сбои в работе! Простите!
Работы производятся прямо сейчас 19-03-2024! 🞨
Меню :
php array (33)
php (329)



Blog (1392)
php (329)
js (244)
html (147)
css (131)
html tags (62)
js tag (56)
jquery (42)
text (37)
js method (36)
php array (33)
js date (33)
form html (30)
online (29)
Показать еще :
fonts (26)
ruweb.net (25)
foto (22)
php file (20)
atom (20)
forum (19)
hosting (18)
svg (18)
input (18)
php date (17)
board (16)
php time (16)
html book (16)
color (15)
info (15)
img (14)
js time (14)
js url (14)
js events (14)
htaccess (13)
select (13)
notepad (13)
osclass (13)
keyboard (12)
знак (12)
dw block (12)
php img (12)
php path (12)
table (12)
download (12)
icon (11)
form (11)
jsphp (11)
alphabet (10)
keyframes (10)
js delete (10)
yandex (10)
mouse (10)
chart (9)
hover (9)
dosite (8)
browser (8)
php post (7)
comment (7)
php url (7)
iframe (6)
php get (6)
mysql (6)
click (6)
list (6)
canvas (6)
adminka (6)
vs code (6)
js id (5)
mb (5)
heading (5)
value (5)
reg.ru (5)
ftp (5)
year (5)
js math (5)
tag a (5)
bbcode (4)
php var (4)
base64 (4)
xml (4)
scandir (4)
games (4)
flags (4)
symbols (4)
week (4)
day (4)
ssl (4)
нок (4)
submit (4)
task (4)
vk (4)
month (4)
pages (4)
console (4)
js form (4)
domen (3)
line (3)
https (3)
js post (3)
jquery post (3)
money (3)
numbers (3)
js img (3)
padding (3)
куб (3)
captcha (3)
ucoz (3)
js hash (3)
tag hr (2)
details (2)
typeof (2)
seo (2)
prompt (2)
sitemap (2)
рся (2)
youtube (2)
height (2)
arrows (2)
js vars (2)
counter (2)
google (2)
qr kod (2)
video (2)
speed (1)
smile (1)
нод (1)
rutube (1)
scroll (1)
windows (1)
archive (1)
jino (1)
cursor (1)

Как заменить ключ в массиве php

"замена ключа массива php" или "Как заменить ключ в массиве php". На самом деле - заменить ключ в массиве очень просто!

Но вот с какой проблемой мы столкнемся... что порядок массива будет нарушен! Что ж... и эту проблемку я тоже покажу как решить! С примерами!

Подробно о замене ключа в массиве.

  1. Заменим ключ в массиве.
  2. Замена ключа без изменения положения ключа.

  1. Заменим ключ в массиве.

    Здесь немного нужно сказать о теории...

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

    Поэтому требуется несколько телодвижений...

    Алгоритм замены ключа, имени ключа

    (далее просто "замена ключа".)

    Нам потребуется получить значение ячейки старого ключа, который мы хотим изменить, переименовать. Присвоить новому ключу значение старого ключа.
    После того, как новый ключ создан со значением старого ключа . У нас получиться, что есть две ячейки с одинаковыми значениями, но два ключа, "старый ключ" и "новый ключ".

    Следующим шагом - мы спокойно можем удалить старый ключ.

    Пример замены ключа в массиве:

    Для иллюстрации нам понадобится массив:

    $array_example = array('Ячейка 1','Ячейка 2','Ячейка 3','Ячейка 4' );

    Выведем прямо здесь с помощью print_r:

    print_r($array_example);

    Результат:

    Array

    (

    [0] => Ячейка 1

    [1] => Ячейка 2

    [2] => Ячейка 3

    [3] => Ячейка 4

    )

    Предположим, что мы хотим заменить ключ второй ячейки, ключ №1.

    1). Получаем значение ключа в новую ячейку:
    $array_example[] = $array_example[1];

    Опять выведем, что у нас получилось - print_r($array_example);

    Array

    (

    [0] => Ячейка 1

    [1] => Ячейка 2

    [2] => Ячейка 3

    [3] => Ячейка 4

    [4] => Ячейка 2

    )

    2). Удаляем старый ключ:

    Для удаления строго ключа нам потребуется функция unset:

    unset($array_example[1]);

    Мы заменили ключ!

    Результат замены ключа в массиве.

    Array

    (

    [0] => Ячейка 1

    [2] => Ячейка 3

    [3] => Ячейка 4

    [4] => Ячейка 2

    )

    Вывод о замене ключа:

    Что мы здесь наблюдаем?

    При такой замене имени ключа, нарушается нумерация ключей. Теперь нам нужно(если нужно) восстановить нумерацию ключей

    Array

    (

    [0] => Ячейка 1

    [1] => Ячейка 3

    [2] => Ячейка 4

    [3] => Ячейка 2

    )


  2. Замена ключа без изменения положения ключа.

    Но, что, если вам требуется сохранить положение ключа в массиве и заменить его имя - есть какие-то варианты?

    Поскольку у меня на сайте есть множество данных хранимых в ассоциативных массивах, то и ключи периодически приходится заменять, но , чтобы место данного ключа не менялось!

    Замена имени ключа в цикле.

    Предположим, что у нас есть ассоциативный массив(приведем простой пример такого массива):

    $price = array ("помидоры" => 15, "огурцы" => 12, "петрушка" => 22, "бананы" => 16);

    Выведем через print_r

    Array

    (

    [помидоры] => 15

    [огурцы] => 12

    [петрушка] => 22

    [бананы] => 16

    )

    Замена ключа без изменения положения в массиве:

    Предположим, что в выше приведенном массиве нам требуется изменить имя ключа номер 2(огурцы) на какое-то другое, без изменения положения в массиве, для этого вам понадоится:

    Выше цикла создаем новый массив:

    $new_arr = array();

    Для этого примера нам понадобится, цикл foreach

    foreach ($price as $key => $value)

    Внутри цикла создадим условие if и проверим, если ключ массива "огурцы"

    if($key==огурцы)

    То, создаем в цикле новый массив "$new_arr" с новым ключом "новые_огурцы" и значением старого ключа:

    {$new_arr[новые_огурцы] = $value; }

    Иначе(else) - все остальное :

    else {$new_arr[$key] = $value;}

    И далее... вернем в старый массив новый:

    $price = $new_arr;

    Соберем весь код замены ключа на новый:

    $new_arr = array();

    foreach ($price as $key => $value)

    {

    if($key==огурцы) {$new_arr[новые_огурцы] = $value;}

    else {$new_arr[$key] = $value;}

    }

    $price = $new_arr;

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

    print_r($price);

    Результат вывода замены ключа:

    Array

    (

    [помидоры] => 15

    [новые_огурцы] => 12

    [петрушка] => 22

    [бананы] => 16

    )

Не стесняемся говорить спасибо!
Помочь проекту DwWeb.ru

Поделиться ссылкой! C друзьями или врагами!

Этим вы очень поможете проекту! Заранее огромное спасибо!

Ещё : dwweb.ru есть здесь:
ruweb
Все статьи авторские, при копироавании активная ссылка обязательна DwWeb.ru! © 2015 - 2024 Контакты. Реклама на сайте Лучший хостинг : RUWEB + помощь по RUWEB
Страница загружена за : 0.017817 секунд. Подробнее