Получить текущий ключ массива внутри foreach
Итак, я создаю что-то для моего работодателя, чтобы они вводили продукты, у них очень специфические требования. У меня есть форма с динамически сгенерированными полями, например ... (очевидно, не точный код для подражания, но примеры идентичны концептуально)
inputted value = height
inputted value = width
числа генерируются на основе вещей в базе данных, поэтому 20 будет соответствовать "ширина» 27 будет соответствовать "рост" например.
Поэтому, как только пользователь вводит значения, мне нужно, чтобы эти значения были введены в базу данных ... или в тесте выводим эхо.
foreach ($_POST['attribute'] as $attributes){
echo key($attributes).' '.$attributes.'<br>';
}
Так что должен выводить ...
20 значение высоты
Значение ширины 27
но вместо этого он выводит
значение высоты
значение ширины
Что здесь происходит? У меня есть что-то похожее ... но немного другое, так как определенные числа могут иметь более одного ввода ...., который работает отлично.
inputted value = option 1
inputted value = option 2
inputted value = option 1
foreach ($_POST['option'] as $options){
echo key($options).' ';
foreach ($options as $option){
echo $option.'<br>';
}
который выводит отлично ...
20 вариант 1
20 вариант 2
27 вариант 1
Я нене понимаю, почему более сложный работает, а простой нет, я что-то упускаю очевидное? Я знаю, у меня есть несколько неортодоксальный метод кодирования по сравнению с некоторыми, но это то, что он лол. Любая помощь будет принята с благодарностью.
РЕДАКТИРОВАТЬ: вар дамп по запросу
массив (22) {["Pid»] => строка (12) "тестовый продукт "["pPrice»] => строка (0) "" ["PNAME»] => строка (0) "" ["pRRP»] => строка (0) "" ["pPostSize»] => строка (0) "" ["pOurPrice»] => строка (0) "" ["pEstDelivery»] => строка (0) "" ["pWeight»] => строка (0) "" ["Пин»] => строка (0) "" ["pOrder»] => строка (0) "" ["pStock»] => строка (0) "" ["pManufacturer»] => строка (0) "" ["PTYPE»] => строка (13) "Душевые клапаны "["Прейндж»] => строка (0) "" ["кошка"] => массив (2) {[0] => строка (2) "72" [1] => строка (2) "23" } ["атрибут»] => массив (2) {[0] => строка (5) "ширина» [1] => строка (6) "рост" } ["опция»] => массив (3) {[0] => массив (1) {[11] => строка (6) "работы1" } [1] => массив (1) {[10] => строка (6) "работы1" } [2] => массив (1) {[10] => строка (6) "работы2" }} ["pLongdescription»] => строка (0) "" ["meta_description»] => строка (0) "" ["meta_keyword»] => строка (0) "" ["meta_title»] => строка (0) "" ["действие»] => строка (6) "Создайте" }
смелые части - это те части, которые успешно вышли из моего второго примера. но жирный курсив, как вы можете видеть, возвращает 0 вместо 20, который фактически находится в значении имени формы.