Comments 30
Неадекватный размер картинок в посте — по полмегабайта каждая. Зачем?!
+1
Сорри!
Пережал в jpeg. Мак ось неадекватные скрины делает…
Пережал в jpeg. Мак ось неадекватные скрины делает…
0
UFO just landed and posted this here
Спасибо
В первом варианте были png.
Тут в другом похоже косяк, мак ось с ретиной делает скрины 144dpi, меняешь на 72 dpi, качество портиться.
Да и habrastorage походу еще раз пережимает…
В первом варианте были png.
Тут в другом похоже косяк, мак ось с ретиной делает скрины 144dpi, меняешь на 72 dpi, качество портиться.
Да и habrastorage походу еще раз пережимает…
0
<?php
passtru("wget news.yandex.ru/internet.rss -qO — | grep -e '<\(title\|pubDate\)>' | tail -n+3 | tac — | sed 's/<pubDate>\(.*\)<\/pubDate>/[\1]/' | sed 's/<title>\(.*\)<\/title>/\1|/' | tr -d '\n' | tr '|' '\n'");
passtru("wget news.yandex.ru/internet.rss -qO — | grep -e '<\(title\|pubDate\)>' | tail -n+3 | tac — | sed 's/<pubDate>\(.*\)<\/pubDate>/[\1]/' | sed 's/<title>\(.*\)<\/title>/\1|/' | tr -d '\n' | tr '|' '\n'");
+5
Зачем этот пример из PHP вызывать?
+2
[sarkasm]да вы что?
а как же повторное использование библиотек и красивое документирование кода. [/sarkasm]
а как же повторное использование библиотек и красивое документирование кода. [/sarkasm]
+3
а теперь вам сюда нужно прикрутить запись в базу, оповещение на мыло и логирование
+2
Допишу ещё три строчки. Можно было бы и в одну, но чересчур сложно получится. Мы же запростоту решений, да?
0
Угу, а потом нужно будет отправлять почту через smtp, а настройки этого smtp должны вытягиваться из xml… ну и т.д. И через пару итераций в этих трех строчках черт ногу сломит.
Я полностью согласен, что этот код избыточен для выведения в консоль 5 строчек. Но, когда речь идет о клиентском проекте с часто меняющимися и/или добавляющимися требованиями, подход «написать пару строчек кода без учета возможных изменений или расширений» просто неприемлем.
Я полностью согласен, что этот код избыточен для выведения в консоль 5 строчек. Но, когда речь идет о клиентском проекте с часто меняющимися и/или добавляющимися требованиями, подход «написать пару строчек кода без учета возможных изменений или расширений» просто неприемлем.
0
Тут уже в одной этой строчке без поллитры не разберёшься :) Я не призываю так делать ни в коем случае, лишь хотел продемонстрировать, что автор поста нарезает холодец болгаркой.
0
В принципе согласен. Но для ознакомления с компонентом Console статья вполне сгодится:)
0
Я не знаю где вы тут разглядели такого рода процесс)))
В этом комменте написал, что все должно занимать 3 команды + написание кода.
По большому счету мое предложение — попытка сделать инструмент для системного использования, вы же зацепились за конкретный пример для статьи, набросали быстро свою реализацию в одну строчку и с вами сложно спорить о ее простоте))
В этом комменте написал, что все должно занимать 3 команды + написание кода.
По большому счету мое предложение — попытка сделать инструмент для системного использования, вы же зацепились за конкретный пример для статьи, набросали быстро свою реализацию в одну строчку и с вами сложно спорить о ее простоте))
0
>// ./src/Command/NewsInternetCommand.php
>namespace Command;
>use Parser\YandexRSSNewsParser;
>use Symfony\Component\Console\Command\Command;
>use Symfony\Component\Console\Input\InputArgument;
>use Symfony\Component\Console\Input\InputInterface;
>use Symfony\Component\Console\Input\InputOption;
>use Symfony\Component\Console\Output\OutputInterface;
…
реализовывать скриптовые задачи на «этом» — facepalm.jpg
>namespace Command;
>use Parser\YandexRSSNewsParser;
>use Symfony\Component\Console\Command\Command;
>use Symfony\Component\Console\Input\InputArgument;
>use Symfony\Component\Console\Input\InputInterface;
>use Symfony\Component\Console\Input\InputOption;
>use Symfony\Component\Console\Output\OutputInterface;
…
реализовывать скриптовые задачи на «этом» — facepalm.jpg
0
Не совсем понял в чем проблема использовать неймспейсы?
0
суть не в неймспейсах, а в количестве кода для выполнения простейшей задачи.
github.com/Herzult/SimplePHPEasyPlus#readme
github.com/Herzult/SimplePHPEasyPlus#readme
+3
Приведенный вами пример все же более раздут
Весь процесс должен выполниться 3-мя командами:
После чего открываете сгенерированный класс команды и пишете тело метода execute()
Не вижу здесь такого переизбытка кода, как вы это представляете…
Весь процесс должен выполниться 3-мя командами:
$ composer create-project suncat/console-commands ./cmd
$ cd cmd
$ app/console generate
После чего открываете сгенерированный класс команды и пишете тело метода execute()
Не вижу здесь такого переизбытка кода, как вы это представляете…
+1
выполните следующее:
find $projectRoot -type f -name '*.php' -exec cat {}\; | wc -l
поймёте, что такое переизбыток кода
считайте кодом не только количество строк, написанных лично вами, а весь код, исполняемый интерпретатором :)
find $projectRoot -type f -name '*.php' -exec cat {}\; | wc -l
поймёте, что такое переизбыток кода
считайте кодом не только количество строк, написанных лично вами, а весь код, исполняемый интерпретатором :)
0
Я бы чуть упростил возможность форматированного вывода.
То что сразу бросается в глаза — вывод секций
и строк с несколькими параметрами.
Всё это стоит упросить и сделать код более компактным )
А так идея и реализация очень прикольные. Спасибо
То что сразу бросается в глаза — вывод секций
$output->writeln(array(
"",
"<info>Start parsing</info>",
""
));
и строк с несколькими параметрами.
$output->writeln(sprintf(
"<info>[%s]</info> <comment>%s</comment>",
$item['datetime'],
$item['title']
));
Всё это стоит упросить и сделать код более компактным )
А так идея и реализация очень прикольные. Спасибо
-1
Спасибо
Этот код чисто для примера, но по вашему совету немного скорректировал.
Этот код чисто для примера, но по вашему совету немного скорректировал.
0
То что всегда хочется сделать в первую очередь в форматировании вывода команд симфони — добавить кастомных методов и хукуов. Ибо использовать эти их XML теги для стандартных вещей крайне нерационально. Лучше добавить предустановленных методов вывода сразу с красивым форматированием.
+1
Sign up to leave a comment.
Консольные команды на PHP