Имена переменных
Скажите есть ли возможность в PHP работать с названиями переменных, как со строками. Т.е. в функции есть массив с именами переменных и в функцию передается какая-то одна переменная. Надо определить, есть ли ее название в этом массиве.
Вобщем, как сделать значением одной переменной название другой переменной.
Заранее благодарен!
документации.
Ваш вопрос — http://www.php.net/manual/ru/language.variables.variable.php
Кстати, если опишите изначальную задачу, уверен вам укажут менее извращенное решение.
Прежде чем начать программировать на PHP и задавать вопросы на форуме, ознакомьтесь, хотя бы с самыми основами
Ваш вопрос — http://www.php.net/manual/ru/language.variables.variable.php
Кстати, если опишите изначальную задачу, уверен вам укажут менее извращенное решение.
может и в самом деле, опишите вашу изначальную задачу полностью?
В админке интернет-магазина есть форма для добавления нового товара. Назовем ее product_form.php. Из нее все введенные данные отправляются в фпайл handler.php, где они обрабатываются: проверяются на правильность введенных данных (используются регулярные выражения).
Хотел сделать следующим образом. После того как все данные проверены, имена переменых, значения которых ошибочны, возвращаются обратно в форму, где напротив каждого поля формы с неправильным значением будет выводится текст об ошибке.Т.е. сразу все данные проверяются и сообщается ользователю обо всех допущенных ошибках.
Не знаю может существует какой-то другой, более легкий способ. Если знаете - подскажите. Буду очень благодарен.
Из формы всё попадает в ассоциативный массив $_POST. В нём же всё поверяется и крутится, и на стороне сервера собирается обратно вся эта форма с сигналами об ошибках.
Непонятна нужда, описанная в вопросе и какое это вообще имеет отношение к именам переменных?
Цитата: mfender
А при чём же тут имена переменых и возможность работы с их строчными обозначениями?
Из формы всё попадает в ассоциативный массив $_POST. В нём же всё поверяется и крутится, и на стороне сервера собирается обратно вся эта форма с сигналами об ошибках.
Непонятна нужда, описанная в вопросе и какое это вообще имеет отношение к именам переменных?
Из формы всё попадает в ассоциативный массив $_POST. В нём же всё поверяется и крутится, и на стороне сервера собирается обратно вся эта форма с сигналами об ошибках.
Непонятна нужда, описанная в вопросе и какое это вообще имеет отношение к именам переменных?
Наверно вы не поняли. Я хотел сделать так, чтобы скрипт handler.php возвращал массив, состоящий только из имен переменных, значения которых являются неверными. Т.е. если переменная $name содержит неверное значение, то массив ошибок $error будет иметь след. вид: $error[0]="name";
Данные в массиве $_POST обрабатываются в цикле. И ключи с ошибками записываются в (array)$error:
Код:
foreach($_POST as $key=>$value){
if (<$value in error>){
$error[] = $key;
}
}
if (<$value in error>){
$error[] = $key;
}
}
Цитата: mfender
Вот и славно!
Данные в массиве $_POST обрабатываются в цикле. И ключи с ошибками записываются в (array)$error:
Данные в массиве $_POST обрабатываются в цикле. И ключи с ошибками записываются в (array)$error:
Код:
foreach($_POST as $key=>$value){
if (<$value in error>){
$error[] = $key;
}
}
if (<$value in error>){
$error[] = $key;
}
}
Так я проверяю много переменных скриптом (на наличие значений и прогоняю через регулярные выражения) и хочу по мере нахождения неправильный значений заносить имена этих переменных в массив $error.
P.S. Не понятна вот эта запись:
Код:
<$value in error>
Это символизирует "если $value содержит ошибку". Т.е. это как аз то самое место, где "проверяю много переменных скриптом (на наличие значений и прогоняю через регулярные выражения)". Я ж не стану писать здесь все процедуры проверки...