[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: проверка на существование
Reh
есть массив get,
есть метод для доступа к нему

function getValueGet($key) {
return $this->get[$key];
}


вот так можно к нему обратиться


core::$htmlRequests->getValueGet('actions')


как проверить есть существует ли элемент с ключом actions?
Миша
empty($_GET['actions'])


_____________
Принимаю заказы, писать в ЛС
Reh
проверить нужно из другого класса


private $get = array();

function getValueGet($key) {
return $this->get[$key];
}


Медведь
надо проверить этот массив - private $get = array();
и на существование, а не пустоту
sergeiss
Цитата (Reh @ 4.02.2016 - 23:28)
как проверить есть существует ли элемент с ключом actions?

Какова конечная цель?

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Reh
Цитата
Какова конечная цель?


если обратиться к несуществующему элементу вылезет ошибка.
Или тупо @поставить ?
sergeiss
Лучше умно использовать магические методы smile.gif

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Reh
Цитата
Лучше умно использовать магические методы

Это как smile.gif ?
sergeiss
Вот тут читай http://php.net/manual/ru/language.oop5.magic.php Особенно обрати внимание на __get()

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
depp
isset нынче не в моде?
Reh
Цитата
isset нынче не в моде?


как тут его пристроишь?
Обращаемся то из другого класса к методу.

Или это невозможно без изменения метода?
AllesKlar
Цитата (Reh @ 4.02.2016 - 22:13)
Или это невозможно без изменения метода?

Именно так.

Вот это некоректно
function getValueGet($key) {
return $this->get[$key];
}


Должно быть нечто:
return isset($this->get[$key]) ? $this->get[$key] : 'некое дефолтное значение, например NULL';


Можно использовать магию, но это опять же менять кода класса.
А если уже все равно менять, так меняй сразу свой метод.

Все остальное будут костыли.

_____________
[продано копирайтерам]
Reh
AllesKlar
sergeiss

спасибо!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.