
Roman
22.03.2017
14:33:51
$user = $prophet->prophesize('User');
у класса User есть два метода
$user->getRating()->willReturn(2);
первый мокаю так

Google

Roman
22.03.2017
14:33:51
все ок
но как замокать второй метод класса User
getStatus(\JsonResponce $responce)
один метод допустим обращается к сервису какому нить

Vadim
22.03.2017
14:47:54
зазубренная дока помогает пулреквесты по-диагонали смотреть например :)

/
22.03.2017
14:47:59
использую
use ABC;
class Test extends Entity{
}
напомните как наследовать еще ABC не используя use

Vadim
22.03.2017
14:48:01
да еще и багули в них находить
еще можно узнать некоторое количество интересного говна, но я его вот так сходу уже и не помню :(

Ivan
22.03.2017
14:51:47
наследовать? никак

Vadim
22.03.2017
14:52:54
ну, можешь навертеть цепочку из промежуточных классов и наследовать все по очереди, только зачем

/
22.03.2017
14:54:36

Vadim
22.03.2017
14:55:01
в пшп нет множественного наследования, если ты про это

Ivan
22.03.2017
14:55:03
что как

Google

/
22.03.2017
14:56:48

Oleksii
22.03.2017
14:56:51
можно трейты наклепать

/
22.03.2017
14:57:03

Ivan
22.03.2017
14:57:27

Vadim
22.03.2017
14:57:43
ну опять же, только зачем клепать трейты, только чтобы подохнуть потом?

/
22.03.2017
15:06:41

Vadim
22.03.2017
15:07:42
расскажи вообще что хочешь сделать
и что значит call вызвать и погнать

/
22.03.2017
15:11:18
расскажи вообще что хочешь сделать
использую
use ABC;
class Test extends Entity{
public function __construct(array $data =[])
{
ABC::request();
parent::__construct($data);
}
}
но без use

Vadim
22.03.2017
15:13:15
\ABC::request();? смотря какой неймспейс
но красивше с use ведь

/
22.03.2017
15:14:02

Vadim
22.03.2017
15:15:03
либо я не понимаю, либо ты хочешь либо плохого, либо того, чего не понимаешь, напиши подобие кода, как ты хочешь чтобы работало

/
22.03.2017
15:17:11

Alexander
22.03.2017
16:39:18

/
22.03.2017
16:46:30

Google

Alexander
22.03.2017
16:50:13

/
22.03.2017
16:51:35

Alexander
22.03.2017
16:52:21
В файле трейта namespace указан?

/
22.03.2017
16:53:22

Alexander
22.03.2017
16:54:04
Классы через use подключать нельзя, только трейта
Трейты

/
22.03.2017
16:56:07
namespace Entities;
trait ABC {
use Api\Entities\MyClass;
}
class Test extends Entity
{
use ABC;
}

Alexander
22.03.2017
16:57:30
Use в трейте , думаю, нужно сразу после namespace указывать
namespace Entities;
use Api\Entities\MyClass;
trait ABC {
}
class Test extends Entity
{
use ABC;
}

Dmitriy
22.03.2017
16:59:21
Какие-то костыли, не что бы побороть себя и юзать \ABC::request(); или use без трейта

Alexander
22.03.2017
16:59:27
use Api\Entities\MyClass; - если это класс, то его нельзя подключать как трейт

/
22.03.2017
16:59:31

/
22.03.2017
17:00:07
все я пошел гялть с собакой,

Артур
22.03.2017
17:00:22
Трейты подключаются через use, а в трейтах самих подключать вряд ли что-то можно таким образом

Alexander
22.03.2017
17:00:25

Артур
22.03.2017
17:00:34
хотя логично было бы, если б можно было бы, но я не проверял и доки не читал оп этому поводу

Alexander
22.03.2017
17:01:28
А трейты нужны, для "имитации" множественного наследования и повторного использования кода

Oleksii
22.03.2017
17:01:40
трейты не для подключения класса реализованы. Они для использования кода. Это как бы костыльное решение множественного наследования.

/
22.03.2017
17:01:58

Артур
22.03.2017
17:02:02

Google

Alexander
22.03.2017
17:02:04

/
22.03.2017
17:02:10
но я могу use и все, тот же ко

Артур
22.03.2017
17:02:20
вопрос в организации кода просто

/
22.03.2017
17:02:26
да

Артур
22.03.2017
17:02:34
вообще можно и без ООП обойтись, раз на то пошло)
и без неймспейсов
и кодить на уровне 5.2
просто ООП и неймспейсы - реально удобная и важная вещь, а трейты нужны раз в год

Alexander
22.03.2017
17:03:11

Admin
ERROR: S client not available

Alexander
22.03.2017
17:03:45
Они вообще лишние эти трейты

Артур
22.03.2017
17:03:49
Ну трейт просто так и не заюзается

Alexander
22.03.2017
17:12:01
трейты очень удобны для того, чтобы использовать в функциях, которые не изменяются, но могут потребоваться при работе с классом.
Так например я создавал трейт Translatable, чтобы подтягивать нужные связи из бд, в котором было 2 метода
getTranslationModel и getTranslation
Либо трейты используются для работы с парсерами, где удобно логику разбора отдельных частей выносить в отдельные методы, которые могут быть использованы в различных местах
А по поводу use - их просто 2, видимо поэтому они и вызывают затруднения, какой и где использовать :)

Альберт
22.03.2017
17:16:35

Stanislav
22.03.2017
17:40:36
Кто делал экспорт из экселя, делал выборку и подходящие записи выводил в форме таблицы? Может есть какие нибудь лайфхаки или советы?

Артур
22.03.2017
17:43:30
как-то раз была статья на хабре, в которой ребята заморочились, и у них PHP открывал на виндовом компе прям инстанс excel и там работал с данными

Stanislav
22.03.2017
17:45:15
Даа, как нибудь файл закешировать бы

Артур
22.03.2017
17:59:43
ну либой распарсить, там наверняка в каком-нибудь поле будут данные, его серализовать и положить куда-нибудь

Google

Yuri
22.03.2017
22:15:09

(;¬_¬)
22.03.2017
22:18:32
ну для себя-то я уже решил это дело. я просто с помощью другого пакета распарсил...

Vladimir
22.03.2017
22:19:00
/link@yetanotherstatsbot

Yet Another Stats
22.03.2017
22:19:01
https://yasb.exileed.com/telegram/chat/1001042383571

Yuri
22.03.2017
22:22:12
средставами пхп я решал это с помощью фонового воркера

Sergey
23.03.2017
05:16:57
если только чтение из excel то box/spout
использует генераторы, память не кушает, работает быстро

Nurik
23.03.2017
07:10:24
Ребят посоветуйте литературу по паралелльному программированию и распределенным системам.

Oleksii
23.03.2017
07:29:19
ты явно чатиком ошибся)) Веб бояре не интересуются такии вопросами)

$iD
23.03.2017
07:39:19

Dmitriy
23.03.2017
07:51:31
Джумала еще!

$iD
23.03.2017
07:52:19
и друпал 5 версии

Dmitriy
23.03.2017
07:54:59
это уже сеньоры

Ivan
23.03.2017
07:58:04
а еще опенКарт
и 1С
и Битрикс

Denis
23.03.2017
07:58:43

Ivan
23.03.2017
07:58:45
что там еще из страшного есть?
магнето
или как он там