Артур
s:211:"a:8:{s:3:"fio";s:1:"s";s:5:"email";s:12:"asdsa@dds.ds";s:5:"phone";s:5:"23423";s:6:"broker";s:9:"dasdasdas";s:7:"pasport";s:11:"3432sadasds";s:4:"card";s:4:"visa";s:3:"dat";s:10:"19.10.2017";s:7:"user_id";i:47;}";
Артур
почему такой сериалайз((
Артур
точка с запятой(
Артур
в конце
Артур
$order_massiv = [
'fio' => $fio,
'email' => $email,
'phone' => $phone,
'broker' => $broker,
'pasport' => $pasport,
'card' => $card,
'dat' => $dat,
'user_id' => $user_id
];
Артур
обычный массив(
Артур
а откуда то береться точка с запятой(
Олексій
Stas
Привет! Можете подсказать как парсить? На сайте http://verda-m.ru/catalog/dveri-emal/emal-seriya-klassika/kapri/ у товара есть тип изделия, при выборе меняются данные о товаре. Сайт на битриксе.
Артур
Артур
можно поподробнее)
Evgeniy
как думаете как вот эту вот лапшу заменить ?
https://pastebin.com/MXExu2qe
🐴
Evgeniy
каким именно ?
Evgeniy
есть условно вариант сделать имена методов
Evgeniy
и генерировать их и дергать
Evgeniy
но я как то считаю это грязным хаком
Evgeniy
думаю мб есть какой другой вариант
🐴
$this->taskFinish($task); вот тут нарушение information expert
🐴
таска сама должна знать, что ей делать после execute
Evgeniy
ну так execute когда то завершиться
Evgeniy
таска это очередь
Evgeniy
и после завершения таски, надо задачу из очереди убрать
🐴
либо Finish Wait и Fatal должны реализовывать некий ResultInterface()
Evgeniy
не может же таска рулить всей очередью и убирать сама себя от туда
Evgeniy
🐴
и должен быть ResultInterface::afterExecution
🐴
тогда ты просто делаешь $tast->execute()->afterExecution();
Evgeniy
идею с excecute понял неплохая идея
Evgeniy
получается там в afterExecute можно дополнительные объекты передать
🐴
а логика из TaskManager::taskFatal() пойдет в Fatal::afterExecution()
Evgeniy
типо Quee
Evgeniy
да я понял о чем ты
Evgeniy
в целом норм
Evgeniy
мне нравиться
🐴
это называется замена условного перехода полиморфизмом
Evgeniy
не знал что это так называется
Evgeniy
просто полиморфизмов много видов
🐴
https://refactoring.com/catalog/replaceConditionalWithPolymorphism.html
Evgeniy
я видел вот такой ужасный пример в пхп и динамических языках
Evgeniy
public function run(TaskInterface $task)
{
$result = $task->execute();
$class = get_class($result);
$this->$class($task, $result);
}
🐴
пиздец
Evgeniy
ну и ниже ужасные имена методов)
Evgeniy
я такой способ видел но это да пиздец
Evgeniy
и ахтунг динамических языков
🐴
а это называется "мы не умеем в дабл диспатч"
Evgeniy
я как ты предложил так красивей и правильней
Evgeniy
и TaskManager не буду забивать приватными методами
Evgeniy
public function run(TaskInterface $task)
{
return $task->execute()->done($this, $task);
}
🐴
Evgeniy
да сейчас думаю как переназвать
Evgeniy
finisher
Evgeniy
😆
🐴
tearDown?
Evgeniy
там по сути надо или таску из очереди выкинуть или message сохранить как задача завершилась
Evgeniy
да норм
Evgeniy
как в phpunit
🐴
Evgeniy
там не обязательно remove
Evgeniy
если wait значит таска что то ждет
Evgeniy
tearDown не плохо
Anonymous
Вечер добрый
Anonymous
кто нибудь с DeepSound работал?
Anonymous
точнее удавалось ли кому нибудь, собрать его вином на Ubuntu
🐴
это же метод класса ExecResult
🐴
хотя может и ничего
🐴
TaskManager такое себе
🐴
пахнет)
Evgeniy
))
Evgeniy
у нас это имя уже прижилось
Evgeniy
просто рефакторю
Evgeniy
наш код воняет по новому делаю отложенные задачи
Тенпеннай
Тенпеннай
картинка в тему дискуссии, я смотрю
🐴
NPM!!! Я знал, что для них приготовлен отдельный котёл!
Владислав
хД
Владислав
works on my machine, lol
Ортем
Ебятушки доброе утро. Кто какой плагин использовал на Wordpress для сайта каталога?