| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Функция, где переменная в переменной |
| Автор: neokortex 10.4.2008, 15:59 | ||
| делаю одни и те же операции, решил уже написать функцию. Функция проверяет наличие той или иной переменной, и создает еще одну с указанием результата проверки, у меня вот так
понятно что "$$name_perem_status" - это [censored33! Пожалуйста, соблюдайте элементарные правила приличия при общении на форуме] какое-то, которое я сам придумал, поэтому и не работает. Может кто подсказать, как это "оформить"? Т.е. по идее новая переменная должна принимать вид "$email_status=true". |
| Автор: Canarat 10.4.2008, 16:14 | ||
Весь код - бред. Особенно
Это всегда вернет false для любых значения $name_perem. По понятным причинам. А чтобы устанавливать переменные - использовать $_GLOBALS массив, если не терпится так. |
| Автор: Sannis 10.4.2008, 16:22 | ||
Подписываюсь под словами выше. Не проще ли брать переменную из POST и не менять её название? |
| Автор: Feldmarschall 10.4.2008, 16:22 |
| neokortex, для начала ответь на вопрос - а зачем тебе переменная с результатом проверки? |
| Автор: neokortex 10.4.2008, 17:05 |
| ну например пользователь заполняет некую сложную форму, дабы исключить попытки вандализма, необходимо проверить почти каждое поле на наличие самого поля, на заполненность (или незаполненность), а также необходимо проверить содержание поля. Ведь можно сохранить форму себе на комп, отредактировать стандартные html-евские "ограничения", и добавить в базу всякой дряни. Но это все лирическое отступление. так вот первый этап это наличие переменной. Если отсутствует $_POST['name_perem'] необходимо выполнить одну операцию, если присутствует - другую, таких полей множество, надо проверить все и если будет замечена хоть одна ошибка, данные не будут обрабатываться далее, а будет выводится ошибка. для этого нужна "переменная в переменной" |
| Автор: Feldmarschall 10.4.2008, 17:10 |
| Вот именно - если хоть одна замечена, то скрипт перестанет выполняться. Следовательно, какой смысл давать переменной отдельное имя? сделай одну переменную, $error, и её проверяй. Переменные переменные при проверке формы нафиг не нужны. В лучшем случае, тебе понадобится массив, где ключом будет имя поля, а значением - сообщение об ошибке. по поводу проверки наличия - почитай про синтаксис массивов в документации, http://php.net/types.array |