
Alexandr
04.07.2018
06:51:10

smile
04.07.2018
06:53:06

Alejandro
04.07.2018
06:54:19
если для 1 - 0, то int на enum можно заменить

Evgeniy
04.07.2018
07:07:24

Google

Tony
04.07.2018
07:09:22

Alexandr
04.07.2018
07:13:33

Ivan
04.07.2018
07:58:39
Может кто в курсе, существует ли Ali по Whatsapp?
Api
Просто находил миллион сервисов предлагающих платную интеграцию, соответственно должна быть апи для месенджера

Bohdan
04.07.2018
08:00:07
еще есть пятая ссылка в гугле, в которой все хорошо рассказали
в чем проблема сначала поискать, а потом спрашивать?

Ivan
04.07.2018
08:01:32
Сори, недоразумение вышло

Ilya
04.07.2018
09:11:19

Sergey
04.07.2018
09:33:56

Tony
04.07.2018
09:39:47

F01134H
04.07.2018
09:42:06
это значит что есть таблица хранящая все оплаты всех пользователей

Google

F01134H
04.07.2018
09:42:13
типо транзакции

Evgeniy
04.07.2018
09:45:19
ну транзакции хорошо но у него же бесплатно

Tony
04.07.2018
09:45:32

Evgeniy
04.07.2018
09:45:40
с точки зрения бд надо хранить каждую оплату с датой суммой
а у обонента при оплате записывается id транзакции
а по нему уже данные о сумме, способе начисления (например если возврат по требует)
и прочей фигне, но это все от деталей зависит

Tony
04.07.2018
09:51:45
В 2017 году на конфе по Yii был прикольный доклад, где рассказывали про биллинг на основе двойной записи:
https://yiiconf.ru/data/yiiconf2017/ppt/272.pdf

Maksim
04.07.2018
09:55:46

Sergey
04.07.2018
09:56:03

Maksim
04.07.2018
09:57:33
юи, биллинг, прикольный... блин, если скучно можно доклад посмотреть)

Tony
04.07.2018
10:02:21

Sergey
04.07.2018
10:02:24
ничего интересного, разве что может кому-то "открылли глаза что стандартные проблемы уже решены надо только поискать"

Tony
04.07.2018
10:05:44

Гена
04.07.2018
10:07:10
В общем, написал компрессор кода php, он кривой , но работает, если кому надо могу в гит выложить

Maksim
04.07.2018
10:07:31
компрессор кода на пхп... хоспаде

Sergey
04.07.2018
10:08:09
типа аглификация/обфускация или пробелы удаляешь?)

Гена
04.07.2018
10:10:05

Google

Maksim
04.07.2018
10:10:20
супер тупо и бесполезно)

F01134H
04.07.2018
10:10:20
зочем)
ну для обфускации реально прикольно
а в виде компрессора оно не надо

Гена
04.07.2018
10:11:01
Делал для себя и для уменьшения размера файла

F01134H
04.07.2018
10:11:43
гнаться за уменьшением файла в 2018)

Гена
04.07.2018
10:16:52

Sergey
04.07.2018
10:30:25
но вообще нет смысла гнаться)

Maksim
04.07.2018
10:37:05
мб он заливает веб шеллы по фтп в далёком прошлом. Диалап с перманентными обрывами, все дела
в любом случае, от большого ума такие вещи не делают)

Victor
04.07.2018
10:43:07
Как правильно заставить имплементить методы в классе, которые необходимы для подключаемого трейта?
1 Делать абстрактные методы в трейте?
2 Делать методы в самом трейте которые вернут дефолтные значения. А в классе переопределять.
Например , есть класс Class A, к нему подключается трейт Trait T. В трейте мне нужно получить что-то из класса А - $this->getPrice()
В классе А я реализовываю метод getPrice()
Есть другие варианты? И какой предпочтительней?

Valentin
04.07.2018
10:43:22

Shmaltorhbooks
04.07.2018
10:43:37

Valentin
04.07.2018
10:44:18
Ну принципе да)

Sergey
04.07.2018
10:44:26

Shmaltorhbooks
04.07.2018
10:47:35
или который рассчитывает, что клиентский класс что-то там имплементит

Sergey
04.07.2018
10:48:20

Google

Sergey
04.07.2018
10:48:39
но сам факт наличия трейта уже вопросы порождает

Victor
04.07.2018
10:48:59
Вижу как решение - вынести функционал в сервис класс и инжектить его в конструкторе. Верно?

Shmaltorhbooks
04.07.2018
10:49:21

Sergey
04.07.2018
10:50:00

Victor
04.07.2018
10:50:59

Shmaltorhbooks
04.07.2018
10:52:17
путанно немного, да?)

Admin
ERROR: S client not available

Александр
04.07.2018
10:52:48
А если под трейт сделать интерфейс и имплементировать его вместе с трейтом?

Bohdan
04.07.2018
10:53:13
но при этом менее красивый

Victor
04.07.2018
10:53:21

Bohdan
04.07.2018
10:53:36
т.к. интерфейс для трейта можно забыть заимплементить

Александр
04.07.2018
10:54:20
Если внутри компании все придерживаются такого трейт + интерфейс, то это не забудется.
Плюс наверное ещё можно внутри трейта проверять имплементирует ли класс интерфейс
Хотя я не знаю, есть ли доступ к контексту внутри трейта, не использую их

Shmaltorhbooks
04.07.2018
10:55:45
ехал трейт через трейт

Google

Bohdan
04.07.2018
10:55:52
больше проверок богу проверок

Александр
04.07.2018
10:55:57

Shmaltorhbooks
04.07.2018
10:56:02
и часто из-за этого очень грустно)
видал в трейтах и что-то такое:
trait Foo {
pubilc function bar() {
return parent::fooBar();
}
}
ад, одним словом

Victor
04.07.2018
10:58:16
Спасибо камрады. Дали пищу подумать. ?

Shmaltorhbooks
04.07.2018
10:58:41
или даже так
trait Foo {
pubilc function bar() {
$this->someMethod();
return parent::fooBar();
}
}

Maksim
04.07.2018
10:59:17
вместо трейтов завёл файлик functions.php и жизнь прекрасна)

Shmaltorhbooks
04.07.2018
10:59:24
и думаешь такой - а что, блять, должно быть $this-ом, чтоб оно работало?)

Igor
04.07.2018
11:01:31

F01134H
04.07.2018
11:06:38
скажите ка, а может ли фабричный метод генерить VO? И если да, то может ли он устанавливать для него параметры?

Anton
04.07.2018
11:20:35
А почему бы он не смог?

F01134H
04.07.2018
11:21:04
хз
на всякий случай спросил

Maksim
04.07.2018
11:21:59

test
04.07.2018
13:20:17
Кто вчера меня в РО добавил?

F01134H
04.07.2018
13:20:41
?

Maksim
04.07.2018
13:21:10
вычисли его по айпи

Bohdan
04.07.2018
13:21:26
ты ж developer