CSV/TSV-формат и PHP

Я люблю Excel - править огромные таблицы, быстро анализировать данные в нём одно удовольствие. Для того, чтобы обработанные данные передать в приложения на CakePHP, я просто копирую всё в буфер и вставляю в textarea. Чтобы разбирать информацию оттуда, я использую

PHP:
  1. $rows = tsv_array($this->data['ModelName']['textarea_field']);

А вот и сама функция для разбора TSV.
Читать полностью >>

Нет комментариев

Отладка PHP с FirePHP в Firebug

Я часто ругаюсь на print_r() и чуть более продвинутый pr() потому что выводимая информация перемешивается с тем, что должен видеть пользователь. Также раздражает просмотр объектов с огромными массивами информации. Мне не очень нравится Javascript с его дурацким синтаксисом, но, наверное, единственное, что меня в нём греет - это Firebug, которые делает отладку не столь ужасной. Приятно, когда можно сделать console.log(everything, you, want); и потом просматривать информацию в нормальном раскрывающемся дереве, а не в огромной простыне.
Читать полностью >>

11 комментариев

Вложенность в регулярных выражениях

Мастера регулярных выражений могут делать настоящую магию. Вместо того, чтобы писать сложные лексические анализаторы, они могут одной строчкой сделать всю работу. Это как игра го - изучить основы очень просто, но чтобы стать настоящим профессионалом нужны годы опыта.

Допустим, есть строка

CODE:
  1. begin someFunction("test"); end;

Нужно выделить из неё

CODE:
  1. ("test")

Элементарно

PHP:
  1. $s = 'begin someFunction("test"); end;';
  2. preg_match('#\(.*?\)#', $s, $m);
  3. print_r($m);

выведет

PHP:
  1. (
  2.     [0] => ("test")
  3. )

Но в боевых условиях пользователи обязательно рано или поздно добавят параметр со скобками

CODE:
  1. begin someFunction("test",(5+3)*2); end;

Читать полностью >>

5 комментариев

Конфиги в формате PHP

В одной из наших программ конфигурация находится в файле config.php в таком формате:

PHP:
  1. <?
  2. $param1 = 24*3600;
  3. $param2 = array(
  4.     'test' => array(1,2,3),
  5.     'test2' => cos(30)
  6. );

Этот конфиг правится только умными людьми, которые знают PHP и не нужно создавать для них лишние уровни абстракций.

Задача - загрузить этот конфиг в программу. Просто сделать include('config.php') нельзя, потому что можно нечаянно перезаписать какую-то переменную, а в конфигурационном файле писать $config['param1'], $config['param2'] слишком долго.
Читать полностью >>

11 комментариев

Нужен CakePHP-программист

Мне недавно предложили участие в проекте как раз таком, как я больше всего люблю – автоматический сбор и анализ информации, сотни тысяч записей, всякие там XML, AJAX, Google Maps и самое важное – кажется, адекватные заказчики.

К сожалению, у меня сейчас совсем нет свободного времени, и я вспомнил, что у меня есть блог, в который я давно не писал. И этот блог читают более сотни CakePHP-программистов, которым может быть интересен этот проект.

Меня попросили не рассказывать о деталях проекта, но вы можете отправить краткое резюме на jinis_services (собачка) yahoo.de и попросить ТЗ.

Кстати, если ещё кому-то нужны программеры на Cake – оставляйте комментарии. Ко мне уже не первый раз обращаются с блога, может быть, сделаю отдельную страничку для вакансий.

13 комментариев

Что делать, если скрипт съедает 50Гб памяти?

Я всегда выступал за то, что в большинстве случаев надо, в первую очередь, оптимизировать время разработчика, а не пытаться написать самый быстрый и нетребовательный к ресурсам код. Если код работает медленно или съедает много памяти, то можно это иногда обходить другими путями.
Читать полностью >>

24 комментария

CakePHP action из командной строки

Эх, если бы создатель PHP знал как будут мучать его "простенький скриптовый язык для домашних страниц". Я сам использую его часто для таких задач, для которых намного лучше подошли бы Perl, C# и Java. Но так как их знаю в режиме read-only, то у меня получается писать более эффективный код на PHP.
Читать полностью >>

8 комментариев

Меню с выделением текущего раздела

Практически на всех сайтах есть навигация в виде меню. К сожалению, в CakePHP нет хелпера, который бы помогал делать меню автоматически. Это вполне реализуемо, ведь на семантически правильно свёрстаных сайтах меню делается одинаково: <ul><li>...
Читать полностью >>

19 комментариев

Получение ключевого слова, по которому пришли на сайт

На некоторых форумах, если перейти на них с поисковика, подсвечиваются ключевые слова, которые были заданы в поиске. Это помогает быстрее найти нужную информацию. Теоретически можно пойти дальше и немного менять страницу в завимости от категории поискового запроса посетителя.
Читать полностью >>

7 комментариев

Как сделать собственный шаблонизатор

Рано или поздно у каждого программиста возникает желание написать свой Smarty :) .
Называются разные аргументы - более быстрый, гибкий, удобный и так далее.

После того, как я начал пользоваться CakePHP ко мне неожиданно пришло просветление - это было как раз то, что я хотел. Но иногда возникают задачи, когда действительно нужны простейшие шаблонизаторы и CakePHP становится слишком тяжёлой артиллерией.
Читать полностью >>

23 комментария

 Страница 1 из 4  1  2  3  4 »