
Василий
11.04.2017
12:55:39

Алексей
11.04.2017
12:56:37

Василий
11.04.2017
12:58:04
но начинать с интерфейса надо, понять - как оно должно получиться в результате. И потом переделывать потихоньку.

Google

0x9d8e
11.04.2017
13:13:31
Вернее с точки срения пхп это было два интерфейса

Василий
11.04.2017
13:15:16

0x9d8e
11.04.2017
13:17:53
Мне кажется чаще всего достоточно их выправлять в самом начале, когда ещё переписывать нечего почти. Когда оно уже готово и всё с ним хорошо уже редко меняться будет. В идеале вообще только реализации, если сделано с достаточным пониманием бизнес-логики и того какого рода вообще могут быть изменения.

Василий
11.04.2017
13:18:47

Evgeniy
11.04.2017
13:29:58
реализуешь будто есть нужный объект, нужен какой метод добавляешь в интерфейс
когда заюзал где надо смотришь на интерфейс и видишь то что реально юзается
чуть чуть напильником подровнял или преукрасил и начал его объектам реализовывать

Vladislav
11.04.2017
13:38:48
странное поведение PHP обнаружили:
при передаче массива в функцию (обычно, не по ссылке) внутренний указатель сбрасывается, если у массива не числовые ключи
если ключи - инты или даже строки с числами, то не сбрасывается
http://sandbox.onlinephpfunctions.com/code/14ce57cf20cb740aeb5e74a8c33282a00dad1266

0x9d8e
11.04.2017
13:40:39

Evgeniy
11.04.2017
13:41:29
условно есть интерфейс библиотеки
где надо сильно парится потому что им будут пользоватся другие

Google

Evgeniy
11.04.2017
13:42:20
и есть интерфейс для бизнес логики, где есть конкретный бизнес кейс который надо реализовывать (типовы действия с разными объектами)
я о втором случае говорил

dypa
11.04.2017
13:42:51

Evgeniy
11.04.2017
13:44:08
а первый случай лучше тоже ко второму сводить и потом делать как во втором случае)))
имхо естественно

Alyona
11.04.2017
13:48:10
Привет!! Можно выкладывать сюда вакансии??

Алексей
11.04.2017
13:49:07

Alyona
11.04.2017
13:49:51

0x9d8e
11.04.2017
16:04:15
Хм. Часто так выходит, что имея некоторый многомерный (двухмерный чаще всего) массив, нужно получить хеш-таблицу, где ключём будет одно из полей, а значением или вся строка или другое поле.
Я это всегда делаю примерно так:
$hash = [];
foreach ($list as $item) {
if(!isset($hash[$item['key']]))
$hash[$item['key']] = [];
$hash[$item['key']][] = $item; //Или $item['value'];
}
Может есть более адекватный способ? Встроенная функция какая, например.

Alexander
11.04.2017
16:06:15
array_column?

0x9d8e
11.04.2017
16:10:49
array_column?
Ой, ошибся в описании задачи. Вместо "а значением или вся строка или другое поле" должно быть "массив, в который собраны или строки или определённые поля".

Alexander
11.04.2017
16:12:50
Соменваюсь. Слишком специфичная штука получается

0x9d8e
11.04.2017
16:16:54
Например нужно сгруппировать таблицу "фрукт-цвет-вкус" по цвету, чтобы получить хеш "желтый => [[лимон, желтый, кислый], [банан, желтый, сладкий]]".
В общем аналог такой темы:
function array_group($array, $key_index, $value_index = null) {
$hash = [];
foreach ($array as $item) {
if(!isset($hash[$item[$key_index]]))
$hash[$item[$key_index]] = [];
$hash[$item[$key_index]][] = isset($value_index) ? $item[$value_index] : $item;
return $hash;
}
Очень уж часто оно оказывается нужным

$iD
11.04.2017
16:23:28
зачем писать это
if(!isset($hash[$item[$key_index]]))
$hash[$item[$key_index]] = [];
не нужно

0x9d8e
11.04.2017
16:24:16
В общем явное приведение типов по-сути

$iD
11.04.2017
16:25:27
Эм... с твоим примером так не выйдет
т.е. дальше у тебя $hash[$item[$key_index]][]

Google

f4rt~
11.04.2017
16:25:34

0x9d8e
11.04.2017
16:26:21
Оно может и приведётся принудительно к массиву, но пусть будет лучше явно

Андрюха (Ren)
11.04.2017
18:10:57
/stat@combot

Combot
11.04.2017
18:11:54
combot.org/chat/-1001042383571

Sergey
11.04.2017
19:47:47
Народ привет. Нужен удаленщик
могу описание вакансии сюда кинуть?

f4rt~
11.04.2017
19:48:40

Daniel
12.04.2017
05:05:43
https://medium.com/fuzz/php-a0d0b1d365d8
Вот это лол

Василий
12.04.2017
05:28:42
было

Daniel
12.04.2017
05:57:06
Упустил
Давно?

Андрюха (Ren)
12.04.2017
06:08:58
пойду застрелюсь

?
12.04.2017
06:15:10
Все! Перехожу на Node.js.

Василий
12.04.2017
06:18:02

Vadim
12.04.2017
06:18:54
уже поздно.
да-да, ты должен был перейти на ноду, когда она была 0.0.1, судя по словам автора, а теперь ты уже умер

Zhandos
12.04.2017
06:19:15
почему поздно?
кстати по ноде

Google

Admin
ERROR: S client not available

Zhandos
12.04.2017
06:19:31
как ее на продакшене выкладывать?

Vadim
12.04.2017
06:19:52
с болью

Андрюха (Ren)
12.04.2017
06:20:34
Вот как теперь жить

Evgeny
12.04.2017
06:30:03
М-дя нод умер
А пхп с 7.0 дали вторую жизнь, он воскрес и теперь у него 2 др
Интересно нод сможет воскреснуть из пепла или уже нет?

Zhandos
12.04.2017
06:30:47
почему умер?
кто нибудь объясните пожалуйста

Василий
12.04.2017
06:32:15

Zhandos
12.04.2017
06:32:32
окай

Jan
12.04.2017
06:34:06
Есть класс SomeService, например с пятью аргументами в конструкторе. Ну, или больше) Как вы считаете, вынос этих аргументов в объект SomeServiceOptions имеет смысл?

?
12.04.2017
06:35:21

Vadim
12.04.2017
06:37:10
вдруг из этого небольшого исследования что-то, да выйдет хорошего https://goo.gl/forms/YDiuZN1dAaCshSvx2
если наберется достаточно больше количество ответов и из адекватность будет хоть сколько-нибудь выше 0, то попробую на основании этого запилить что-то в духе "Сказ о том, как никто нихуя не мониторит"

Любимый
12.04.2017
06:37:14
Ноде.боль

Василий
12.04.2017
06:39:22

Любимый
12.04.2017
06:47:42
Спамеры или не спамеры, вот в чем вопрос

Vadim
12.04.2017
06:48:07
симфонисты поди :)

Andrey
12.04.2017
07:12:09
ну и что, что оркестр
зато со своей ямой и дирижерами

Любимый
12.04.2017
07:26:09
Мне уже страшно

Sergey
12.04.2017
07:48:22
за_лся я уже с редиректом на https —- кто поможет)

Google

Sergey
12.04.2017
07:48:39
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R,L]

Андрюха (Ren)
12.04.2017
07:49:30

Sergey
12.04.2017
07:49:35
вот тут ругается Неверное перенаправление на странице

Nadirq
12.04.2017
08:14:12
или 301

Sergey
12.04.2017
08:17:48
да сейчас этот вариант тоже попробую...
я так понял браузер надо очищать после каждой попытки