Какой рейтинг вас больше интересует?
|
Главная / Главные темы / Тэг «ненормально»
О том, как мы на PHP запускали настоящий MS Excel и что из этого вышло 2016-07-26 14:54:06
Не секрет, что зачастую PHP-программистам приходится решать задачи, весьма далёкие от бытового ...
+ развернуть текст сохранённая копия
Не секрет, что зачастую PHP-программистам приходится решать задачи, весьма далёкие от бытового представления о «веб-разработке». Развитие языка в последние годы привело к тому, что PHP всё чаще считают языком общего назначения, пригодным не только для сайтов, но и для других задач.
Одну из таких «других» задач мне с коллективом пришлось решать совсем недавно. Мы решили поделиться «картой граблей» с теми, кто, возможно, пойдет по этому же пути.
Дано
- Многие наши партнёры (скажем прямо — это крупные банки) любят считать что-то в Excel. Причем «любят» — это очень нежно сказано. Сложнейшие скоринговые модели могут быть «запрограммированы» в Excel, в файле из сотни листов с десятками макросов
- Перевести «программы», написанные в Excel на какой-либо язык программирования — практически нереально. Это займет уйму времени, а проблема постоянного обновления и проверки корректности делает такую задачу и вовсе нерешаемой
Требуется
- Основная информационная система нашей компании написана на PHP. Она содержит в себе как веб-интерфейсы, так и множество консольных сервисов и воркеров.
- С этими «программами» в Excel нужно как-то взаимодействовать из консольных приложений на PHP — передавать в них данные, обсчитывать, получать результаты
Некоторое время нам хватало возможностей популярной библиотеки PHPExcel. Но когда от бизнеса поступило очередное требование «нужно, чтобы работали макросы, и еще бы хорошо всё это сохранять в PDF», стало понятно, что выбранный путь — тупиковый. Нужно не парсить файлы xlsx, не имитировать просчёт, и даже не использовать Open Office, а научиться взаимодействовать с «настоящим» Microsoft Excel.
Что из этого вышло - под катом
Тэги: composer, excel, office, phing, php, phpexcel, windows, ненормальное, ооп, программирование, разработка
[Перевод] Один пиксель вместо тысячи слов 2016-07-22 11:38:20
+ развернуть текст сохранённая копия
Пару месяцев назад, отдыхая от реализации новых возможностей вроде q_auto и g_auto, я прикалывался в нашем командном чате по поводу того, как различные форматы хранения изображений будут сжимать однопиксельную картинку. В ответ Orly, редактор блога, попросил меня написать пост об этом. Я сказал: «Конечно, почему бы и нет. Но это будет очень короткий пост. Ведь что можно рассказать про один пиксель».
Похоже, я был сильно неправ.
Что можно сделать с одним пикселем?
В ранние годы веба однопиксельные картинки часто использовались как костыли для вещей, которые сейчас делаются через CSS. Создание отступов, линий, прямоугольников, полупрозрачных фонов – много чего можно сделать, просто масштабируя пиксель до нужных размеров. Ещё одно использование пикселей, дожившее до наших дней – маячки, средства для отслеживания и аналитики.
В отзывчивом веб-дизайне однопиксельные картинки используются как временные заглушки в ожидании загрузки страницы. Большинство браузеров не поддерживают HTTP Client Hints, поэтому некоторые варианты с отзывчивыми изображениями ждут полной загрузки страницы, чтобы подсчитать актуальный размер картинок, а затем заменяют однопиксельные картинки нужными изображениями при помощи JavaScript.
Сломанная картинка
Читать дальше →
Тэги: gif, jpg, png, веб-сайтов, графические, данных, изображений, ненормальное, обработка, программирование, разработка, сжатие, файлов, файлы, форматы
[Перевод] Удивительная история document.write 2016-07-10 18:54:23
Метод document.write — один из самых странных методов. Он вставляет HTML-код на ...
+ развернуть текст сохранённая копия
Метод document.write — один из самых странных методов. Он вставляет HTML-код на страницу сразу после себя. Точнее говоря, сразу после тега <script> , внутри которого он расположен. И только в том случае, если документ еще не был загружен полностью. А если был? Тогда страница очищается и заменяется на, что было указано.
Можно вставить строку, которая явно сломает остальную страницу:
document.write('<plaintext>')
Или можно поиграть в русскую рулетку:
if (Math.random() > 0.9)
document.write('<!--')
Читать дальше →
Тэги: document.write, javascript, бесполезный, браузеры, веб-сайтов, код, ненормальное, программирование, разработка, рекурсия
[Из песочницы] Работа с WAV-файлами с использованием PHP 2016-05-04 11:56:06
Всё началось с того, что я задумался о том, как отобразить на сайте информацию о загруженном ...
+ развернуть текст сохранённая копия
Всё началось с того, что я задумался о том, как отобразить на сайте информацию о загруженном аудио-файле. Для начала решил разобраться с самым простым форматом — wav. Как оказалось, ничего сложного в этом нет и писать именно об этом, в общем-то, не было бы никакого смысла, благо, информации о том, как устроен wav-файл «изнутри» в Интернете полно.
И тут Остапа понесло И тут в голову пришла светлая мысль о том, что было бы прикольно не просто отображать информацию о файле, но и иметь возможность генерировать такой файл «на лету». Думаю, все видели в сети всевозможные «онлайн-пианино» и прочее, верно?
Итак, что мне удалось сделать за 2 вечера — под катом.
Читать дальше →
Тэги: composer, php, wav, waveform, ненормальное, программирование
[Из песочницы] Поиск регулярных выражений с помощью регулярных выражений 2016-04-13 18:39:27
Приветствую уважаемые.
«Ехали регулярные выражения, через регулярные выражения, ...
+ развернуть текст сохранённая копия
Приветствую уважаемые.
«Ехали регулярные выражения, через регулярные выражения, видят регулярные выражения, в регулярных выражениях, регулярные выражения — регулярные выражения, регулярные выражения, регулярные выражения...»
Нет. Это не бред сумасшедшего. Именно так я хотел назвать мой небольшой обзор на тему поиска регулярных выражений с помощью регулярных выражений. Что по сути тоже не меньший бред. Даже не знаю может ли вам такое в жизни пригодиться. Лучше конечно избегать таких ситуаций когда надо искать непонятно что, непонятно где. Ведь что такое регулярное выражение? Да почти всё что угодно!
Вам может показаться странным, но:
.это, например, вполне себе регулярное выражение:.
(Или это тоже может быть (можете даже проверить))
~это~
<script src="И это - регулярка, вполне рабочая и может быть даже кому нибудь очень необходимая.js">
Но давайте без паники, попробуем приступить, может что и выйдет приличное.
Читать дальше →
Тэги: php, выражения, инструменты, ненормальное, программирование, разработчика, регулярные
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13
Главная / Главные темы / Тэг «ненормально»
|
Взлеты Топ 5
Падения Топ 5
|