Pull to refresh
13
Алексей@roxblnfk

PHP Developer

5
Subscribers
Send message
А вы смотрели готовые реализации? Возможно там это уже есть.
Например вот либа с реализацией PSR стрима

Ваш пример хорошо соотносится с тем, что вы пишете, но это совсем не "приблизительно тоже самое". Акция с переименованием точек wifi не бессмысленна тем, что является этаким инфоповодом. На примере себя могу сказать, что если бы не эта новость на хабре, то я бы так и остался неосведомленным.
Т.е. само по себе переименование, как у нас иногда говорят, только "добавит энтропии", но сам факт того, что об этом будут говорить, уже чего-то да стоит

Ну да, в интерфейсе комментарий к ->has():
* Returns true if the container can return an entry for the given identifier.
А в Illuminate\Container ->has() возвращает значение $this->bound()
Ну да, как-то не нормально :)
Если контейнер от ларавеля (пробовал Slim 4 Alpha/beta именно с ним) не является нормальным autowire-контейнером, то Вы, вероятно, правы и я ошибаюсь на этот счёт
Slim использует PSR-11-совместимый контейнер, но не благоприятствует контейнерам с autowire:
Обращаемся к исходному коду:
github.com/slimphp/Slim/blob/4.x/Slim/MiddlewareDispatcher.php#L162-L172
О каком полноценном Autowire можно говорить, если не объявленный заранее в контейнере Middleware будет создаваться с передачей одного параметра ContainerInterface?
Причём MiddlewareDispatcher создаётся в конструкторе App вот таким незатейливым кодом:

$this->middlewareDispatcher = new MiddlewareDispatcher($routeRunner, $container);

Т.е. его не переопределить

Подписку делал на музыке по акции. Когда подписка заканчивалась зашёл в личный кабинет и отключил автопродление яндекс.плюс. Через пару дней после окончания подписки списались деньги и подписка возобновилась. Оказалось, что это Яндекс музыка списала с меня такую же сумму как если бы я купил я.плюс, подписала меня на год Яндекс музыки, и эта подписка на музыку "чудесным образом" превратилась в Яндекс плюс.
Т.е. я должен был зайти отдельно в настройки Яндекс музыки и отключить подписку ещё и там.

Спасибо. Для uBlock Origin будет так:

google.com,google.by,google.com.ua,google.kz,google.ru#?##search .srg > .g:has(a[href*="qaru.site"])

yandex.by,yandex.kz,yandex.ru,yandex.ua#?#.serp-list > .serp-item:has(a[href*="qaru.site"])


Не пробовал с другими расширениями, однако яндекс.браузер на странице yandex.ru вообще не даёт отрабатывать блокировщику uBlock Origin :-/
А на FireFox нормально
Дело в том, что php-библиотека для работы с excel-документами появилась давно, но для неё так до сих пор не придумали шаблонизатор… А всем нам нужна такая библиотека

Под эту библиотеку, может, и не придумали, однако отдельный шаблонизатор под это дело имелся. Я говорю про opentbs — плагин для шаблонизатора tinybutstrong (tbs), который позволяет работать с офисными документами. Это, конечно, тот ещё динозавр, но он работает, работает хорошо, и я рад, что его всё-таки удалось официально подружить с композером :)
Однако шаблонизатора без функции генератора в наше время действительно некоторым не достаточно и Ваши усилия в этом направлении отнюдь не бесполезны.

Хоть tbs пока более гибкий и функциональный в плане шаблонизатора: с его помощью можно выводить не только двумерные массивы, но и массивы в массивах… и в массивах. Т.е. блоки и субблоки в терминологии tbs; также можно и в горизонталь и в вертикаль; повторять при выводе блоков не по одной строчке, а по две и три на запись… указывать условия для отображения прямо в шаблоне; объединять повторяющиеся ячейки (по крайней мере в docx) и.т.д… Но в Вашей библиотеке уже есть кое что, чего в tbs нет и не будет (но это не точно) — и это уже хорошо. Например… (Тут я хотел написать по современный код, но зашёл на гитхаб и увидел комментарии на русском, табы в отступах и не увидел тестов. Наверное это из-за того, что сижу и пишу комментарийс телефона)… корректное размещение соседствующих таблиц без дублирования строк — отличная фишка. Указание стиля ячейки в коде — тоже не плохо, если изначально есть данные, требующие декоративного выражения. В общем, если серьезно подойти, то проект того стоит
Скоро ещё и Tensor выкатит свой Wasaby на гитхаб. Будет, что пощупать.
Нужно взять за правило: не создавать и не убивать ресурсы в потоках.
Можно попробовать следующее:
создать класс и через его статические свойства сообщать основному потоку, что можно закрывать сокет; когда поток отрабатывает, то он переключает соответствующие флажки в этих свойствах, в основном цикле это отслеживается, и сокет-ресурс основным потоком закрывается

Вообще, раньше pthreads не отличался стабильностью, поэтому прибегать к его использованию было не желательно. Если сервер не предполагает использование долгих вычислений, то потоки, как таковые, не нужны, хватает неблокирующих сокетов.
Насчёт qip: где-то 27.03.16 числа отвалился мессенжер… пообщался с ТП, ответили быстро, обещали решить. На днях, вроде как, всё восстановили. И мессенджер, и даже почту (уже очень давно сборщик писем не мог выполнять свою задачу с мылом [at]qip.ru).

Или он сдох по в ином смысле?
Привет. Поскольку я сам далёк от электротехники (ну не так, чтобы очень, но достаточно), Ваша статья очень помогла в выборе светодиодов, да и просто внушила уверенность, что я решил заняться не бессмысленной фигнёй. Спасибо.
Дальше можно не читать.
Моя история такова: несколько лет назад подох монитор (отпахал 4-5 лет) LG Flatron L222WS 22". Симптомы: выключался после нескольких минут работы. Сначала разобрал, заменил все подозрительные конденсаторы — не помогло. Решил отдать в фирменный центр samsung, вдруг что получится. Сказали, что сдохла подсветка, будет дешевле купить новый монитор, чем починить этот.
Был приоритет на учёбе, диссертация по делам кузнечным, все дела… Поэтому купил себе монитор новый, но старый приберёг. Ушёл в армию, вернулся и вспомнил о мониторе :)
Разобрал, начал смотреть, изучать. Понравилась микроребристая плёнка между ЖК-матрицей и подсветкой. Красивая. По моим наблюдениям случайно оставленные ногтём коцыки на ней не отражаются на качестве подсветки, поскольку компенсируются другой рассеивающей плёнкой :) Ну это ладно.
Сначала думал от безысходности засунуть в переднюю рамку корпуса матрицу, а стенку и панель-подсветку пустить в другое русло. Получился бы полупрозрачный монитор, в котором кое что видно, пока в окне на его фоне светит солнце :D
Может я бы так и сделал, но мозги матрицы были вверху, они бы свешивались на матрицу и верхнюю часть изображения на экране было бы не видно из-за перекрытия мозгами источника света…

Поэтому ребячество быстро отпало и я нагуглил эту статью.
Как я уже писал, она помогла мне выбрать светодиоды (чуть не выбрал более тусклые). Кроме того, Статья зарядила меня праведной энергией, что я даже заказал мультиметр, и сходил купил флюс. Советский паяльник у меня уже был — идеальный вариант. Таким образом обратного пути у же не было.
К моему счастью выводы на плате LG были подписаны: +15VDC, GND, N/F, DIV…
Как пришли 5 метров светодиодов, так начал колдовать. Обрезать светодиоды не получилось. Вместе с краем ленты срезал минусовые жилы :) Так я угон, простите, укокошил первые полметра.
Путями мучений и страданий в итоге получилось подогнуть края ленты и кое как вставить в панель подсветки… Свежеподогнутую ленту надо было очень быстро вставлять в пазики для световых элементов, ибо из-за некоторой упругости ленты она успевала разогнуться достаточно, чтобы не влезать в сборку.
Для удобства и эстетического удовольствия для каждой (верхней и нижней) ленты светодиодной подсветки на подводящие провода приделал вилки. Розетки для них пришлось выпаивать из питающей схемы монитора. Не жалко, я ими уже никогда не воспользуюсь.
Протестировав подсветку начал думать, как понизить напряжение с 15 вольт до 12 вольт. Мне не спаять такую технологичную схемку, как у автора статьи, ведь я всего-лишь обычный художник. На помощь пришла инициатива отжать у друга за вознаграждение готовый регулятор напряжения на основе Lm2596 (стоит рублей 50 на али). Подкрутил винтик до 12 вольт и вот, что получилось:


Как видно, изображение нормально подсвечено. Не для случаев, когда солнце светит в глаз, но всё-же. А вот тут видны дефекты подсветки лентой 120 диодов на метр:

(неподсвеченные треугольники)
На этих мутных фотках не видно, но уже при сборке дисплея я жёстко накосячил: как я не пытался заботиться о беспыльности помещения и стерильности окружения, но после сборки обнаружил, что прямо за матрицей в центре экрана находится волосина! КАК она там очутилась — загадка. Пришлось пересобирать, ну да ладно, я же по образованию кузнец, вот и получилось грубовато.
Как и у автора статьи, у меня встал, как полагается, вопрос об отключении подсветки дисплея при выключении монитора на кнопку или при уходе монитора в спячку. Кроме того, что дисплей в таком случае тупо светился белыми пикселями, но также ещё из схемы питания доносился высокочастотный раздражающий звук, такой же как от старых кинескопических телевизоров, только ещё выше.
Для решения задачи сначала хотел насадить транзистор базой на вывод N/F, потенциал которого равен 0, когда монитор не хочет спать и +3.3V, когда нужно, чтобы светила подсветка. Погуглил туда-сюда и решил вставить РЕЛЕ. Ибо нужно, чтобы щёлкало.
Месяц шла ко мне реле на 3 вольта. Впаял — не сработало. Оказалось, что мощности на реле у управляющего сигнала не хватает. Ну кто же знал, а я всего-лишь экскаваторщик. Ладно, всё-таки придётся насаживать транзистор. Но не без реле! Выбор пал на КТ-315. Запаивался по схеме

Спасибо странице, ссылку на которую я нашёл на хабре, пока гуглил тонкости транзисторов ( microsin.net/adminstuff/hardware/relay-and-transistor-as-electronic-switches.html )
В общем всё стало работать как надо, монитор подарил другу, тот счастлив. Да и я тоже.
Так что, товарищи, не бойтесь экспериментировать! Я хоть и работаю веб-программистом, но у меня это сделать получилось! Даже для начинающего электроника мой опыт покажется уровнем ниже, чем в программировании 'Hello World', но я думаю вы согласитесь, встав на моё место: это всё чертовски интересно! :)
Извините за безграмотный текст, армия всё-таки оставила свой отпечаток на моей ранее хорошей образованности, и ещё раз спасибо за статью.

Information

Rating
Does not participate
Location
Рыбинск, Ярославская обл., Россия
Registered
Activity

Specialization

Backend Developer, Web Developer
Senior
From 6,000 $
Git
PHP