СКРИПТЫ
ТЕГИ:
php (285)
js (167)
html (139)
css (119)
html tags (61)
jquery (40)
text (37)
form html (30)
php array (30)
fonts (27)
ruweb.net (23)
foto (22)
online (22)
Показать еще :
php file (21)
atom (20)
forum (19)
svg (18)
board (17)
hosting (17)
js method (16)
html book (16)
input (16)
color (15)
link (15)
php date (15)
js events (14)
htaccess (13)
table (13)
osclass (13)
dw block (12)
info (12)
js delete (12)
select (12)
path (12)
icon (11)
keyboard (11)
jsphp (11)
php img (11)
img (11)
php time (11)
form (11)
download (11)
notepad (11)
url (10)
mouse (10)
js time (9)
yandex (9)
cookie (7)
php url (7)
comment (7)
dosite (7)
task (7)
hover (7)
iframe (6)
list (6)
year (6)
mysql (6)
click (6)
js url (6)
ftp (5)
heading (5)
php get (5)
search (5)
adminka (5)
js id (5)
browser (5)
mb (5)
value (5)
chart (5)
week (4)
mounth (4)
day (4)
reg.ru (4)
нок (4)
bbcode (4)
vk (4)
captcha (4)
submit (4)
js form (4)
symbols (4)
console (4)
ucoz (3)
js post (3)
line (3)
pages (3)
https (3)
ssl (3)
scandir (3)
js img (3)
vs code (3)
padding (3)
куб (2)
js vars (2)
video (2)
youtube (2)
seo (2)
details (2)
title (2)
cursor (2)
base64 (2)
second (2)
tag hr (2)
money (2)
рся (2)
typeof (2)
arrows (2)
counter (2)
height (2)
qr kod (2)
sitemap (2)
нод (1)
windows (1)
google (1)
header (1)
numbers (1)
archive (1)
domen (1)
speed (1)
books (1)
smile (1)
scroll (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" с новым ключом "новые_огурцы" и здесь же удаляем(unset ) старые "огурцы" wall смайлы

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

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

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

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

    $new_arr = array();

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

    {

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

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

    }

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

    print_r($new_arr);

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

    Array

    (

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

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

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

    [бананы] => 16

    )

Пользуйтесь на здоровье! Не забудьте сказать спасибо
Теги :
замена ключа массива
изменить имя ключа
меняем имя ключей
Еще никто не прокомментировал! COMMENTS+   BBcode
аватар
🞨
Загрузить свой аватар
(max ширина, высота = 200px)

Подписаться + =

Последние комментарии :
Марат :
07.07.2022 13:02
Вам спасибо, что оценили! На ваш вопрос в одной строчке не ответишь, поэтому для вас отдельный пункт…
подробнее.
Борис :
07.07.2022 10:41
Спасибо за статью! Подскажите, пожалуйста, как сделать, чтобы файл создавался по имени из формы? Есть тест,…
подробнее.
вывы :
05.06.2022 12:32
сейчас яндекс добавил индексацию js в…
подробнее.
Марат :
02.06.2022 20:14
Михаил :
02.06.2022 20:10
Ну вот только для этого может быть ;) А так, нет смысла…
подробнее.
Марат :
02.06.2022 15:59
Чтобы вы зашли на данную страницу и нажали на…
подробнее.
ruweb
Страница загружена за : 0.020937 секунд. Подробнее