Size: a a a

2020 July 19

A

Andrey in phpGeeks
Александр Хакимов
Если функция вообще способна вернуть что либо, то возврат из той же функции налла, расценивается как чертокодинг
Лол, а что должен вернуть метод getCustomer(int id) : Customer при отсутствии сущности в БД?
источник

СП

Сергей Предводителев... in phpGeeks
Andrey
Лол, а что должен вернуть метод getCustomer(int id) : Customer при отсутствии сущности в БД?
Exception должен выбросить
источник

АХ

Александр Хакимов... in phpGeeks
🤣 вотэта поворот
источник

A

Andrey in phpGeeks
Сергей Предводителев
Exception должен выбросить
А в чём заключается исключительность ситуации, чтобы бросать эксепшн?
источник

АХ

Александр Хакимов... in phpGeeks
Andrey
Лол, а что должен вернуть метод getCustomer(int id) : Customer при отсутствии сущности в БД?
что делать, если я насрал?
источник

СП

Сергей Предводителев... in phpGeeks
Andrey
А в чём заключается исключительность ситуации, чтобы бросать эксепшн?
Не найден customer :)
И пусть уже тот, кто вызывал этот метод - обрабатывает эту ситуацию
источник

V

Victooor in phpGeeks
Сергей Предводителев
Добрый день!

Есть у меня класс-хелпер, который кочует из проекта в проект и постепенно допиливается. Суть хелпера — функции, которые позволяют удостоверится, что переменная нужного типа и если нет, то привести к этому типу.

Примеры функций:

ValueHelper::getNullOrInt($value, array $nullValues = ['']): ?int
ValueHelper::getNullOrIntFromArray(array $array, $key, array $nullValues = ['']): ?int
ValueHelper::getNullOrString($value, array $nullValues = ['']): ?string
ValueHelper::getNullOrStringFromArray(array $array, $key, array $nullValues = ['']): ?string
ValueHelper::assertArray($value): array


Пример использования:

ValueHelper::getNullOrInt('42'); // int: 42
ValueHelper::getNullOrInt(42); // int: 42
ValueHelper::getNullOrInt(''); // null
ValueHelper::getNullOrInt(null); // null


Несолько вопросов :)

1) Есть ли подобные готовые классы? (наверняка есть, но мне что-то не попадались)

2) Может я вообще что-то не то делаю и надо по другому?
Я бы внедрил эти вещи в базовый контроллер и получал их из реквеста. Что то типа $this->getPostAttr('id', $default = null)
источник

V

Victooor in phpGeeks
Александр Хакимов
что ты воид функцию оформишь, безрезультатную, что ты налл вернёшь
Нет. Пхп и иде будут ругаццо что результат void а ты суёшь его в выражение
источник

АХ

Александр Хакимов... in phpGeeks
Victooor
Нет. Пхп и иде будут ругаццо что результат void а ты суёшь его в выражение
что за чушь ты сейчас написал?
источник

СП

Сергей Предводителев... in phpGeeks
Victooor
Я бы внедрил эти вещи в базовый контроллер и получал их из реквеста. Что то типа $this->getPostAttr('id', $default = null)
Да, это уже дальнейший варинт использования. Или ещё в валидаторах.
источник

V

Victooor in phpGeeks
Сергей Предводителев
Да, это уже дальнейший варинт использования. Или ещё в валидаторах.
В валидации assert webmozart
источник

V

Victooor in phpGeeks
Александр Хакимов
что за чушь ты сейчас написал?
Перечитай еще раз
источник

АХ

Александр Хакимов... in phpGeeks
Victooor
Нет. Пхп и иде будут ругаццо что результат void а ты суёшь его в выражение
Я тебе о результате присвоения в переменную говорю, а ты мне про IDE лепишь, как буд то я без тебя об этом не знаю, ниже прочти диалог сначала
источник

S

Shurick in phpGeeks
Александр Хакимов
Если функция вообще способна вернуть что либо, то возврат из той же функции налла, расценивается как чертокодинг
function name($param): ?ClassName;
источник

СП

Сергей Предводителев... in phpGeeks
Shurick
function name($param): ?ClassName;
тоже вариант.
источник

V

Victooor in phpGeeks
Александр Хакимов
Я тебе о результате присвоения в переменную говорю, а ты мне про IDE лепишь, как буд то я без тебя об этом не знаю, ниже прочти диалог сначала
Я то прочитал. Вижу у тя черный пояс по пхп
источник

АХ

Александр Хакимов... in phpGeeks
Victooor
Я то прочитал. Вижу у тя черный пояс по пхп
Что есть, то есть.
источник

V

Victooor in phpGeeks
Александр Хакимов
Что есть, то есть.
По версии Александра Хакимова (с)
источник

V

Victooor in phpGeeks
Уточняй всегда
источник

СП

Сергей Предводителев... in phpGeeks
Victooor
По версии Александра Хакимова (с)
😂
источник