@phpclubru

Страница 382 из 956
Adel
08.11.2017
15:37:31
удалил весь тред про память. Максим может считать это сливом. мне пофиг :)

Sparrow
08.11.2017
15:38:11
?(

Alexey
08.11.2017
15:38:13
а FooRealisation - это что?

Google
Dmitry
08.11.2017
15:38:26
реализация интерфейса Foo

Maksim
08.11.2017
15:38:54
как-то так, 2 примера

Alexey
08.11.2017
15:39:29
а где шторм ругается в примере?

Dmitry
08.11.2017
15:39:50
interface NormalRandomGenerator extends \IteratorAggregate { /** * Генератор случайных нормальных * @return float[]|\Generator */ public function getIterator(): \Generator; }

Maksim
08.11.2017
15:40:28
если в ф-и есть yield, она ничего кроме генератора не вернёт. уберите флоат

Dmitry
08.11.2017
15:41:14
если в ф-и есть yield, она ничего кроме генератора не вернёт. уберите флоат
если я уберу float[] то не будет типа в foreach($generator as ..)

Maksim
08.11.2017
15:42:02
ох уж эти подделки под дженерики) тут идиологически неверно флоат писать в возвращаемые значения) лучше тайпхинт сделать в рамках цикла под айтем

вот я пример скинул - всё ок работает и красиво подсвечивается

Dmitry
08.11.2017
15:43:03
не, так не интересно, я уж лучше @method float current() опишу

Maksim
08.11.2017
15:43:14
https://paste.ofcode.org/NShbxGyxLyDUQycFXiVWTS добавил пример с вызовом current

Dmitry
08.11.2017
15:43:35
->getIterator() тоже не интересно

Maksim
08.11.2017
15:44:14
а вы пока его не вызовите, генератор не появится. Ну так, если что

Vladislav
08.11.2017
15:44:46
лучше скажите, хочу, что бы был интерфейс, который реализуется генератором, что бы автокомплит видел тип элементов генератора... и видел next() current()
и при этом тащил с собой полный DI Middleware всех старых значений и новых, которые еще не вычислил. Типо квантовый скачок все дела..

Google
Alexey
08.11.2017
15:45:20
а версия шторма, кстати, какая? :)

Dmitry
08.11.2017
15:45:34
eap почти последний

Maksim
08.11.2017
15:45:39
->getIterator() тоже не интересно
https://paste.ofcode.org/9gKPBSw54ackziC6c22pqY но окЮ мы люди не гордые)

Леонид
08.11.2017
15:49:29
вот я пример скинул - всё ок работает и красиво подсвечивается
похер на подсветку, главное чтобы работало как задумано и не говнокод

Alexey
08.11.2017
15:50:03
если есть сомнения, что шторм корректно подсвечивает - достаточно баг завести им в трекере

на eap реагируют быстро

Dmitry
08.11.2017
15:50:12
да, все я понял где я затормозил, traversable как бы не сам генератор

в данном случае

Maksim
08.11.2017
15:50:27
похер на подсветку, главное чтобы работало как задумано и не говнокод
мне не похер, например) если что-то серым светится, то в мозгу срабатывает "не работает". но в данном случае говнокода нет, всё работает и всё подсвечивает

Dmitry
08.11.2017
15:52:26
т.е. ->getIterator()->current() правильно будет

Maksim
08.11.2017
15:52:45
ну каррент внутрь я бы прятать не стал. Просто вам смутило почему-то

Dmitry
08.11.2017
15:53:32
да я ступил, почему-то решил, что iterable интерфейса есть iterable генератора, а это не так

Maksim
08.11.2017
15:53:47
просто когда вы форич делаете, гетитератор магией вызывается. Ну что-то вроде очевидного пхпшного поведения)

Dmitry
08.11.2017
15:54:15
ага, именно про это и затупил сначало, что прямой вызов - это тебе не foreach :)

Rich
08.11.2017
22:18:09
А с node js тут помочь могут?

Adel
08.11.2017
22:19:14
нет

Sparrow
09.11.2017
05:26:38
Привет народ что использовать для подключения и работы с mysql ? pdo, mysqli, doctrine либо что-то ещё? без левых библиотек

Alexey
09.11.2017
05:40:52
при работе с симфони — доктрина, при работе с внутреннем фреймфорком — своя обёртка над pdo, при работе с мелкими проектами — pdo

Sparrow
09.11.2017
05:48:09
а mysqli вообще не нужен?

Google
Alexey
09.11.2017
05:51:30
я с ним только однажды пересекался, когда друг попросил немного поправить сайт

Максим
09.11.2017
05:51:37
а mysqli вообще не нужен?
ну смотря что за проект. Если у тебя тупо принять данные с формочки, положить данные в базу и использоваться будет только mysql, то PDO то зачем.

Alexey
09.11.2017
05:54:39
тут холиварный вопрос :) можно же не ставить все экстеншены для пдо, а обойтись только pdo_mysql я так всегда и делаю, ну и если быть честным до конца — мне просто синтаксис pdo нравится больше, чем mysqli собственно вот и все причины его использования

Максим
09.11.2017
05:55:00
тоже верно

Alexey
09.11.2017
06:07:54
к слову, доктрина же не экстеншен, а орм, которая работает поверх pdo https://packagist.org/packages/doctrine/orm

Alexey
09.11.2017
06:09:28
не всегда, если просто "сохранить формочку в базу", то тянуть доктрину будет перебором

Alexey
09.11.2017
06:12:32
кому как удобней, я не настаиваю что доктрина не нужна мне, как человеку начинавшему с mysql_* в php4, часто проще написать запрос руками и просто его выполнить, привычка ну и на работе из-за своей специфики использую внутренний фреймворк

для питона правда sql-алхимию переодически юзаю, но только когда действительно нужно объекты конструировать, а так pymysql решает все потребности в получении данных для аналитики

дело вкуса, привычки и корпоративных стандартов в общем, остальное холивар

Andrei
09.11.2017
06:18:12
эммм, а вы доктрину для сложных запросов используете?

dypa
09.11.2017
06:18:13
кому как удобней, я не настаиваю что доктрина не нужна мне, как человеку начинавшему с mysql_* в php4, часто проще написать запрос руками и просто его выполнить, привычка ну и на работе из-за своей специфики использую внутренний фреймворк
ты настаиваешь на области применимости: symfony => doctrine просто формочка => своя обёртка над pdo doctrine должна применятся там, где требуется datamapper - не важно это laravel или spa app

Alexey
09.11.2017
06:20:39
я не настаиваю, я говорю про то, что и как использую лично я (собственно вопрос был про это) пока у меня не было необходимости использовать доктрину где-то, вне проектов на симфони как я уже сказал, у меня в компании есть стандарты и внутренний фреймворк и да, я согласен, что инструмент нужно выбирать исходя из задачи

эммм, а вы доктрину для сложных запросов используете?
смотря какие запросы считать сложными. есть query builder, есть dql так что и сложные запросы писать можно

Andrei
09.11.2017
06:22:50
ну там где не три где не три join, последний раз когда я видел использование доктрины для (в моем понимании сложных запросов), это была некая лапаша

собственно есть удобный понятный синтаксис SQL, есть биндинг параметров, есть фильтры, очищающие, зачем доктрина?

Alexey
09.11.2017
06:24:30
последний раз такие сложные запросы я писал для сильно нормализованной базы, чтобы извлечь данные для sphinx как я уже писал, у доктрины есть не только query builder

Andrei
09.11.2017
06:27:06
ну возможно, но тот же dql мало чем отличается от sql да. под эластик еще не писал, только sphinx пережил, пока он не поддерживал sql нотацию было тяжко

Google
Alexey
09.11.2017
07:19:06
на dql можно комфортно писать сложные запросы. Но это не doctrine/orm, а doctrine/dbal

Sparrow
09.11.2017
07:33:42
стоит netbeans 8.2 что-то тема не устаналивается((

кто нибудь сталкивался?

Andrei
09.11.2017
07:35:32
чем предустановленные не устраивают?

Sparrow
09.11.2017
07:37:02
привык в sublime работать)

Admin
ERROR: S client not available

Sparrow
09.11.2017
07:37:06
с Monokai темой

Pavel
09.11.2017
07:52:49
Да вы шо тут же нельзя мат :(

Серёга
09.11.2017
08:22:42
Sparrow
09.11.2017
08:23:05
http://plugins.netbeans.org/plugin/61236/

Серёга
09.11.2017
08:33:12
хм, та же хрень, причем все такие https://github.com/jewelbdx/FPR_NetBeans_Theme

sergey
09.11.2017
09:53:43
саблайм крутой

но иде круче (

Pavel
09.11.2017
09:57:35
Ладно, скажите как мне, доктринофилы, если уж доктрина такая крутая, то как решается следующая задачка:

Есть мультитенатный сервис, в котором клиент создает себе сайт. Сайт состоит например аз 20ти таблиц, все таблицы лежат в схеме siteN.* Нужно сделать возможность докриновским сущностям работать с таблицами в разных схемах. То есть две таблицы site1.table1 и site2.table1 это одна и та же сущность но у разных клиентов.

Как это сделать без переписывания доктрины, я в свое время не нашел. Хотя вот в yii2 AR делается за 5 минут.

Andrei
09.11.2017
10:03:11
может как-то скормить инстансу доктрины схему siteN и/или пользователя/пароль с видимоть только этой схемы?

Dmitry
09.11.2017
10:05:58
read или write?

Pavel
09.11.2017
10:06:33
Да я тоже думал, ну это впринципе полурешение. Если нужно например послать UNION запрос сразу в 2 одинаковые таблицы разных клиентов, то облом.

read или write?
И read и write, полноценная работа

Google
Pavel
09.11.2017
10:07:13
Ну, write в несколько схем скорее всего никогда не будет, а вот read очень может быть

Dmitry
09.11.2017
10:08:40
имхо скрывать это под капотом потенциальные грабли

Pavel
09.11.2017
10:08:58
Что ты имеешь в виду?

Dmitry
09.11.2017
10:09:23
я бы для начала пробовал бы просто разные сущности наследники

ну прятать под капотом т.е. уносить чисто в персист слой...

Pavel
09.11.2017
10:12:33
я бы для начала пробовал бы просто разные сущности наследники
Когда количество сайтов потенциально неизвестно, то не сделаешь наследники, т.к. неизвестно сколько их будет. Ну или только как-то извращаться с динамическими объявлениями в анонимных функциях.

Dmitry
09.11.2017
10:13:18
ну таблицы то не динамически создаются

Pavel
09.11.2017
10:13:26
В общем я пришел к выводу что именно в доктрине эта задача очень нетривиальная, из-за того что таблица задается в виде аннотации и потом все это дело вкомпилируется в контейнер/кеш схемы.

Alex
09.11.2017
10:14:12
Всем привет!ребят помогите доделать задачу!у меня уже ступор,есть матрица 5x5 я нашёл в ней центр,и теперь мне надо заполнять матрицу числами по спирали

Вот мой код

$matrixRevers = array( array(0,0,0,0,0), array(0,0,0,0,0), array(0,0,0,0,0), array(0,0,0,0,0), array(0,0,0,0,0) ); $matrixSize = 5; $temp = 1; $k = floor($matrixSize / 2); $matrixRevers[$k][$k] = $temp; echo ("\n"); for ($dx = -1; $dx <= 1 ; $dx++){ for ($dy = -1; $dy <=1; $dy++){ if($dx || $dy){ $temp++; echo('['.$dx.']'.'['.$dy.'] '.'$matrixSize['.($k+$dx).']'.'['.($k+$dy).']='.$temp."\n"); } } }

Dmitry
09.11.2017
10:17:05
да скорее всего можно влезть в момент обработки метадаты

вот только говнокодом попахивает ;)

в чем смысл то

Pavel
09.11.2017
10:18:28
Общая админка сайтов

Andrei
09.11.2017
10:19:07
Общая админка сайтов
а почему не использовать не знаю там site_id

Страница 382 из 956