
Ivan
16.02.2018
13:48:16

Sergey
16.02.2018
13:50:34
в любом случае, это быстрее, чем делать count() без лимитов после основного запроса. К тому же, все зависит от БД. У нас несколько триллионов записей в одной таблице, запрос считается менее чем за 0.5 сек.Чудес нет, тут нужно хорошее железо)

Ivan
16.02.2018
13:51:43
и еще вопрос. Пагинацию Вы делали через ID? offset? или как?

Google

Sergey
16.02.2018
13:52:38
Вот не поверишь. За последние 5 лет разработки, ниразу не делал пагинацию)

Ivan
16.02.2018
13:53:11

Artem
16.02.2018
13:53:14
offset

Sergey
16.02.2018
13:53:42
раньше юзали limit + offset

Artem
16.02.2018
13:53:47
по id изал только когда не надо показывать количество страниц.

Борис
16.02.2018
14:00:54
Парни, было у кого, что PDO::rawCount не фуричит с мускулем? php 5.6
$statement = $pdo->prepare($query, [\PDO::MYSQL_ATTR_FOUND_ROWS => true]);
$statement->execute($params);
$count = $statement->rowCount();
Что с флагом MYSQL_ATTR_FOUND_ROWS что без флага
cli mysql показывает
Query OK, 0 rows affected (0.00 sec)
Rows matched: 1 Changed: 0 Warnings: 0
phpstorm console показывает
[2018-02-16 16:47:14] 1 row affected in 28ms

Arthur
16.02.2018
14:04:14
привет всем, если я не могу найти себя в /etc/passwd, значит ли это , что мой пользователь лежит где-то на серваке в /etc/passwd и поменять себе шелл я не смогу?

Ivan
16.02.2018
14:05:25
Используя Doctrine\ORM\Query
как сделать такое
$builder->addSelect('count(_activity.driverFullName) OVER() AS full_count')
ругается мол Uncaught PHP Exception Doctrine\ORM\Query\QueryException got '('"

Sergey
16.02.2018
14:06:22
сделать кастомную функцию count, которая будет преобразовываться в count() over()

Ivan
16.02.2018
14:06:32
ух....

Sergey
16.02.2018
14:07:34
там достаточно все просто. В доках доктрины есть хорошие примеры. Можно прям копипастить с маленькими изменениями
http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/dql-doctrine-query-language.html#adding-your-own-functions-to-the-dql-language

Google

Ivan
16.02.2018
14:11:34
спасибо. вот я попал, называется иос разраб полез помогать пхпшникам с оптимизацией....

Sergey
16.02.2018
14:14:57
на гитхабе была репа с уже готовыми функциями для доктрины. Хоть убей, не могу найти ссылку. Просто count() over() не все БД поддерживают, вот и нет такой конструкции в доктрине.
проект на symfony?

Ivan
16.02.2018
14:16:43
да симфони

Sergey
16.02.2018
14:17:03
https://symfony.com/doc/current/doctrine/custom_dql_functions
http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/cookbook/dql-user-defined-functions.html
кинь своим разрабам, им хватит)

Ivan
16.02.2018
14:17:38
ага, спасибо

Bohdan
16.02.2018
14:38:29
вот стало интересно, можно ли использовать instanceof как предикат в array_filter, допустим
с учетом того, что это оператор - нельзя
но вдруг есть методы?)

Maksim
16.02.2018
14:41:53
ты что сделать хочешь в итоге?)
\array_filter(
[],
function(object $object)
{
return $object instanceof \stdClass ? $object : null;
}
);
не канает?)

Shmaltorhbooks
16.02.2018
14:43:45
имеешь в виду что-то такое?
public function isA($cls)
{
return function($instance) use ($cls) {
return $instance instanceof $cls;
}
}
а потом
array_filter($array, isA(SomeClass::class))

Bohdan
16.02.2018
14:44:43
не совсем
по типу

Shmaltorhbooks
16.02.2018
14:45:11
array_filter($array, $x instanceof Class::class)?
такое не прокатит)

Bohdan
16.02.2018
14:45:36
array_filter($array, is_array)
должно выдрать все элементы из $array, которые тоже массивы
пример с потолка

Google

Shmaltorhbooks
16.02.2018
14:45:52
только в скобочки возьми
встроенные функции не являются же объектами в пыхе
array_filter($array, 'is_array')
так будет
'is_object' будет

Bohdan
16.02.2018
14:46:39
вижу, консолька уже кинула ошибку
т.к. они фунцкии, а вот instanceof - оператор и с ним сходу не прокатит

Shmaltorhbooks
16.02.2018
14:47:02
а instanceof мало того, что оператор, так оно еще и два аргумента использует

Bohdan
16.02.2018
14:47:06
ну а клепать отдельную функцию или анонимку на это скучно) вот и думал повыпендриваться
бинарный оператор, ага
да
согласен, хрень сморозил, сорян

Shmaltorhbooks
16.02.2018
14:50:57
Накатай свою функцию array_filter_class))
И передавай в неё массив и имя класса)
Но это так, баловство

Bohdan
16.02.2018
14:51:23
вотвот
по проектам такое тягать нехорошо

Shmaltorhbooks
16.02.2018
14:52:04
Заведи под функцию репу и тягай как зависимость ?

Bohdan
16.02.2018
14:52:28
не, не хочу быть причиной повтора left-pad когда-нибудь)

Shmaltorhbooks
16.02.2018
14:53:26
Пойди дальше и предложи эту функцию в ядро пыха ?

Google

Bohdan
16.02.2018
14:53:35
rfc имени меня

Shmaltorhbooks
16.02.2018
14:54:04
имени тебя и имени имени класса)

Ruslan
16.02.2018
17:00:56
/stat@combot

Combot
16.02.2018
17:00:57
combot.org/chat/-1001042383571

Борис
16.02.2018
17:12:04
какая-то странная статистика. че это я на третье место вырвался, за какие заслуги? УСЕ КУПЛЕНА!

Bohdan
16.02.2018
17:19:46
продай обратно
вроде ведь я на третьем месте

Борис
16.02.2018
17:21:11
сори, я на четвертом*

Sergey
16.02.2018
17:22:35
надо завязывать с чатами походу)

Chozzancknm
16.02.2018
17:24:11
Привет
на сайте
есть история
Выйграшей
Мне надо чтобы история мне куда то копировалась или в меню хтмл вставлялась
Подскажите?

Bohdan
16.02.2018
17:27:27

Sergey
16.02.2018
17:28:02
хотя кого я обманываю....

Bohdan
16.02.2018
17:28:32
вотвот
прокрастинация всегда с нами...

Sergey
16.02.2018
17:28:36
хочешь поржать? знаешь что мешает мне статьи писать?

Bohdan
16.02.2018
17:28:46
жги

Sergey
16.02.2018
17:28:58
я не знаю куда их постить. Медиум говно и неудобно. Хабр уже не торт, свой бложик лень и маленькая аудитория будет

Yaroslav
16.02.2018
17:29:08
Подскажите?
<?php cp('win://history', 'c://file.txt');?> как-то так

Google

Bohdan
16.02.2018
17:29:32

Борис
16.02.2018
17:29:35

Bohdan
16.02.2018
17:29:40
или когда как?

Sergey
16.02.2018
17:29:43

Bohdan
16.02.2018
17:31:30
я бы на медиум писал
хоть там и англоязычных ребят больше
хабр реально уже не айс под это
ну и на медиуме как - это правильнее подписки сделаны

Sergey
16.02.2018
17:33:33
вот только вставлять примеры кода на медиуме боль и неудобно
у меня складывается ощущение что если я хочу например картинку по правому краю выравнить - для этого мне нужно покупать платный аккаунт

Bohdan
16.02.2018
17:34:40
надо испытать их редактор

Артур Евгеньевич
16.02.2018
17:36:03

Bohdan
16.02.2018
17:36:27
вопрос раскрутить

Артур Евгеньевич
16.02.2018
17:36:34
+ в том что это не хабр с их дибильной кармаполитикой и аудиторией старнной
+ что будет какоя никакая аудитория(с чатов)

Sergey
16.02.2018
17:36:41

Bohdan
16.02.2018
17:36:52

Sergey
16.02.2018
17:37:19
то что кармаполитика хабра душит любое инакомыслие - это да

Артур Евгеньевич
16.02.2018
17:37:25