
Гена
30.07.2018
21:41:45
В общем да, короткий синтаксис не по стандарту пср, но он применим в простых ситуациях и очень хорошо читается теми кто хотя бы знает что это такое.

Sergey
30.07.2018
21:43:06
ну мол как 2+(1+3)

Google

Роман
30.07.2018
21:43:29

Гена
30.07.2018
21:43:29
Нет

Роман
30.07.2018
21:43:40
Точнее еррор будет.

Гена
30.07.2018
21:43:54
Хм, лично читал лет пять назад

Роман
30.07.2018
21:44:00
Нет
Я только что попробовал.

Гена
30.07.2018
21:44:41
Сейчас проверю на своих версиях

Sergey
30.07.2018
21:44:41
$post ? $post->title : null

Роман
30.07.2018
21:45:00
PHP Parse error: syntax error, unexpected 'echo' (T_ECHO) in

Sergey
30.07.2018
21:45:13
php -r 'echo (123);'
но опять же
это не "вызов функции" и не "как функция" - это просто выражение в скобках в качестве аргумента для оператора

Google

Роман
30.07.2018
21:46:01

Sergey
30.07.2018
21:46:21

Гена
30.07.2018
21:46:47
void echo ( string $arg1 [, string $... ] )
Выводит все аргументы. Символ конца строки не добавляется.
На самом деле, echo - это не функция (это языковая конструкция), поэтому заключать аргументы в скобки необязательно. echo (в отличие от других языковых конструкций) не ведет себя как функция, поэтому не всегда может быть использована в контексте функции. Вдобавок, если вы хотите передать более одного аргумента в echo, эти аргументы нельзя заключать в скобки.
поэтому не всегда может быть использована в контексте функции

Maksim
30.07.2018
21:47:12
фига у вас тут ночь открытий

Sergey
30.07.2018
21:47:41
тип того, скоро люди откроют для себя php.net и узнают как много веселых вещей можно делать в php)

Maksim
30.07.2018
21:47:44
дух граспа витает в воздухе)

Роман
30.07.2018
21:47:50

Combot
30.07.2018
21:47:51
Роман (0) увеличил репутацию Sergey Protko (1)

Sergey
30.07.2018
21:47:56
(а если они еще и выучат нормальный язык то узнают сколько всего нельзя делать в php)

Evgeniy
30.07.2018
21:47:57
например таблицу не строгих сравнений

[Anonymous]
30.07.2018
21:48:10
$post ? $post->title : null
посколько пхп шаблонизатор а не язык программирования, можно было бы обойтись без нул для шаблонов ) И так ясно что так текст должен быть

Maksim
30.07.2018
21:48:16

Sergey
30.07.2018
21:48:23

Evgeniy
30.07.2018
21:48:41

Maksim
30.07.2018
21:48:42
уж забыл когда в последний раз нестрогое сравнение юзал...

Роман
30.07.2018
21:48:59

Sergey
30.07.2018
21:49:27

Evgeniy
30.07.2018
21:49:37
кстате кто хочет посмотреть мою либу по di и халявный code review устроить ?)

Google

Sergey
30.07.2018
21:49:37
касты типов называется, никакого отношения не имеет к "шаблонам"

[Anonymous]
30.07.2018
21:49:53
(string) null
ну и зачем тогда его писать если по дефолту можно было бы нул получать
я всегда просто пишу и задумываюсь об этом

Evgeniy
30.07.2018
21:50:12
завтра)
хорошо я даже видео сделал, правда произношение гавно лень было )

Sergey
30.07.2018
21:50:42

Егор
30.07.2018
21:50:55

Sergey
30.07.2018
21:51:05

[Anonymous]
30.07.2018
21:51:38
а что кстати 2 знака вопрос означают?

Evgeniy
30.07.2018
21:51:58
до того как появился psr, container-interop и прочее
но с появлением container-interop я его заимлементил, а потом появился psr11 который по сути предложен(копирует) container-interop и его я тоже заимлементил как стал accepted

Роман
30.07.2018
21:54:25

[Anonymous]
30.07.2018
21:54:35

Bohdan
30.07.2018
22:03:36

Evgeniy
30.07.2018
22:04:18

Bohdan
30.07.2018
22:05:07

Evgeniy
30.07.2018
22:05:23
спс и тебе рад фитбеку буду

Sergey
30.07.2018
22:06:04

Google

Bohdan
30.07.2018
22:07:02
уже слегка понимаю, что тут происходит, но днем мозг чуть кипел

Sergey
30.07.2018
22:07:30
какой смысл тут экстендиться?)

Evgeniy
30.07.2018
22:08:02
но это либо писать конструктор (3 строки) или сделать например трейт и юзать его в Factory и Service, я думаю лучше лень преодолеть и консктрутор написать, но тогда дублирование кода и code climate его замечает вроде

Bohdan
30.07.2018
22:10:35

Sergey
30.07.2018
22:12:20
фуфу

Evgeniy
30.07.2018
22:13:12

Sergey
30.07.2018
22:14:08
то есть у тебя сервис и фабрика это аналоги симфоневых прототип и шаред?

Evgeniy
30.07.2018
22:16:44
да, примерно но не совсем
и можно расширяться реализуя разные LoaderInterface
это один из первых способов расширения либы

Maksim
30.07.2018
22:21:56
https://github.com/smpl/mydi/blob/master/src/ContainerAwareTrait.php#L8
за что...)

Evgeniy
30.07.2018
22:23:33

Maksim
30.07.2018
22:23:54
да ну
зачем давать инструмент самоубийства)

Evgeniy
30.07.2018
22:24:46
у меня есть вот такой кейс https://github.com/smpl/mydi#%D0%98%D0%BD%D1%82%D0%B5%D0%B3%D1%80%D0%B0%D1%86%D0%B8%D1%8F-%D1%81-%D1%84%D1%80%D0%B5%D0%B9%D0%BC%D0%B2%D0%BE%D1%80%D0%BA%D0%BE%D0%BC-%D0%BD%D0%B0-%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D1%80%D0%B5-slimframework
когда вкорячиваю свой di вместо тех что во фреймворке

Maksim
30.07.2018
22:25:45
конструктор чем не подходит?

Google

Evgeniy
30.07.2018
22:26:21
и чтобы неписать что то типо такова
https://pastebin.com/2aX5RhGE
в конфигах, мне нужен ContainerAwareInterface в провайдерах, ну и заодно вдруг кто хочет инструмент самоубийства

Maksim
30.07.2018
22:27:29
ну хз) мне сие кажется ввесьма странной затеей

Evgeniy
30.07.2018
22:27:58
конструктор чем не подходит?
на момент создания провайдера не существует container, потому что container как бы имутабельный (на самом деле нет) но он не изменяет стейт после создания
и тут или было делать возможность добавлять провайдеры прямо в контейнер по одному
или вот такую штуку

Maksim
30.07.2018
22:28:49
а в рантайме мне в твой слим что-то помешает контейнер любой подкинуть?

Evgeniy
30.07.2018
22:29:10
в той же симфони ContaienrAwareInterface есть, но все знают что его лучше не юзать )

Maksim
30.07.2018
22:29:37
знать и не юзать - разные вещи)

Evgeniy
30.07.2018
22:30:30
мы хотим его обернуть и чтобы при изменение параметра у нас в конфиге использовался он
но если мы оригинальные методы get не проксируем на мой container то pimple создаст объект с теми параметрами что указаны в pimple

Maksim
30.07.2018
22:31:50
мне ещё глаз режет отсутствие return declaration в некоторых местах. своих бы убил за такое :(

Evgeniy
30.07.2018
22:32:12

Maksim
30.07.2018
22:32:47
например
https://github.com/smpl/mydi/blob/master/src/Provider/DynamicFile.php#L18
ну прям сходу. mixed - это круто, но там явно будет объект
если версия пхп не позволяет, хоть аннотацией опиши

Evgeniy
30.07.2018
22:33:38
не вижу смысла дублировать то что описано в интерфейсе

Maksim
30.07.2018
22:34:08
и толку от микшеда?)
чё я, как пользователь апи, должен с него понять?)

Evgeniy
30.07.2018
22:34:20
потому что там может быть что угодно