9 и 10 июня в Москве будет проходить профессиональная конференция для веб-программистов DevConf 2012.
В первый день мероприятия запланированы пять конференций, посвященных PHP, Perl, Ruby on Rails, Python и JavaScript. Во второй день посетителей ждут мастер-классы.
Среди докладчиков DevConf 2012 — такие люди, как
Дэвид Сориа Парра (David Soria Parra; один из активных разработчиков PHP),
Дерик Ретанс (Derick Rethans; активный разработчик MongoDB и PHP),
Андрей Аксенов (автор Sphinx),
Александр Макаров (один из основных разработчиков PHP-фреймворка Yii),
Сергей Петруня (разработчик MariaDB),
Илья Алексеев (контрибьютор OpenStack Nova).
Среди заявленных на данный момент докладов:
-
PHP 5.4 — особености перехода.
- Решардинг Redis без даунтайма.
- MariaDB 5.3 — ветка MySQL с эволюционными и революционными изменениями.
- Практический опыт использования различных Open Source-решений виртуализации в веб-инфраструктурах.
- Реализация элементов логики приложения в MySQL: триггеры, хранимые процедуры, кэширование.
- Еще немного о репликации в MySQL. Проблемы и решения. Опыт использования Galera.
- Как мы разрабатываем Сфинкс (Sphinx).
- OpenStack — Open Source cloud-платформа.
- Рефакторинг и второе рождение проекта на примере Zend Framework 2.0.
- Применение DDD методологии в PHP.
- Yii, его разработка и Yii2.
- Cloud9 IDE и Node.JS.
- Open Source-стартап на Ruby.
- Sprockets under the hood.
- Опыт эксплуатации большого Ruby-проекта.
- Тёмные углы фреймворка Django.
- Как делать проекты на Django проще и зачем надо понижать культуру производства.
- Высоконагруженные системы на примере 2056.ru.
- Plosurin — единая система шаблонизации для frontend- и backend-сторон (Perl).
Среди запланированных мастер-классов:
- Секреты MongoDB: масштабируемость и производительность.
- Основы построения масштабируемых высоконагруженных веб-проектов.
- Sphinx 101.
- Почему MySQL тормозит или отладка проблем производительности MySQL-приложений.
Все подробности доступны на
http://devconf.ru/
Определение: слова — непрерывная последовательность букв английского или русского алфавитов.
Решение:
$x=«Типа, %^& читайте___люди~~~~__маны__ На… РУССКОМ!!! Будете+здоровы. abc, qwe, zxc»;
preg_match_all('/([a-zA-Zа-яА-Я]+)/',$x,$ok);
for ($i=0; $i«;
?>
Результат будет таким:
Типа
сцеплениечитайте
люди
маны
На
шрусРУССКОМ
Будете
предохранителиздоровы
abc
Рецепты с фотоqwe
zxc
ремонт автомобилейГотово.
Спустя почти три года с момента выхода ветки 5.3 представлен релиз языка программирования PHP 5.4.0. Среди ключевых особенностей новой ветки отмечается реализация поддержки конструкции «Traits» и сокращенного синтаксиса массивов, увеличение производительности и сокращение потребления памяти,
поддержка емкости многобайтовых символов для всех сборок, добавление встроенного web-сервера в SAPI-модуль CLI. В новой ветке удалены некоторые устаревшие возможности языка и опции настройки, поэтому версия 5.4 не обеспечивает полную совместимость на уровне API и конфигурации. При использовании PHP 5.4 может потребоваться модификация приложений и серверных настроек (например, удалена поддержка Safe mode и register_globals).
PHP 5.4 является первой веткой, разработка которой велась в рамках нового регламента подготовки релизов, подразумевающего плановую подготовку выпусков через фиксированные промежутки времени с оформлением тестовых версий в процессе разработки. В соответствии с новым регламентом, значительные релизы PHP, содержащие новшества, будут выходить раз в год, а время поддержки новой ветки составит три года.
Основные особенности PHP 5.4.0:
Изменения, нарушающие совместимость:
Прекращение поддержки всех опций, связанных с режимом «Safe mode»;
Прекращение поддержки настроек для автоматического экранирования специальных символов в поступающих из вне данных («magic quotes»);
Прекращение поддержки синтаксиса «break/continue $var»
Удаление конфигурационных опций register_globals, define_syslog_variables, highlight.bg, session.bug_compat42, session.bug_compat_warn, y2k_compliance, allow_call_time_pass_reference и register_long_arrays;
Удаление функций session_is_regisitered(), session_registered() и session_unregister().
В поставляемых файлах конфигурации в опции default_charset вместо «ISO-8859-1» теперь задана кодировка «UTF-8», но по умолчанию, при отсутствии данной опции, по прежнему используется пустое значение («»);
Удалена поддержка hash-алгоритмов Salsa10 и Salsa20.
В расширении Date прекращена поддержка изменения часового пояса через переменную окружения TZ;
Функция array_combine() отныне возвращает значение array() вместо FALSE, если на вход переданы два пустых массива;
Увеличение производительности и оптимизация потребления памяти в Zend Engine. Работа по оптимизации проведена большая, улучшений очень много и они затрагивают различные части внутренностей PHP. Например, в тесте bench.php производительность PHP возросла на 19%, а в тесте micro_bench.php на 26%. При оценке скорости выполнения реальных приложений (c использованием акселератора APC) отмечается ускорение работы CMS typo3 на 6%, WordPress на 8%, drupal на 2%, xoops на 14% и scrum на 13%;
Определение массиваРано или поздно каждому программисту приходится сталкиваться с таким понятием как массив. Массивом можно считать разновидность переменных, в котором храниться несколько значений. Массив определяется при помощи конструкции array(), в круглых скобках которой указываются его значения:
php
$arr = array('PHP', 'MySQL', 'Apache');
?>
или
php
$arr[] = «PHP»;
$arr[] = «MySQL»;
$arr[] = «Apache»;
?>
В C-подобных языках программирования, индекс массива традиционно начинается с 0. Это означает, что если мы захотим вывести первое значение массива «PHP», нам потребуется обратиться к нулевому индексу:
php
echo $arr[0]; // PHP
?>
Если требуется начать массив с другого индекса, например, с 1, то необходимо явно это указать в конструкции array():
php
$arr = array(1 => «PHP»,
2 => «MySQL»,
3 => «Apache»);
?>
или
php
$arr[1] = «PHP»;
$arr[2] = «MySQL»;
$arr[3] = «Apache»;
?>
Элементы массива можно использовать в двойных кавычках как обычные переменные, так код
php
echo «$arr[1] $arr[2] $arr[3]»;
?>
Или через цикл:
php
for ($i = 1; $i <= 3; $i++)
{
echo $arr[$i].« „;
}
?>
Следует заметить, что число элементов в массиве не обязательно знать заранее — его можно вычислить при помощи функции count():
php
for ($i = 1; $i <= count($arr); $i++)
{
echo $arr[$i].“ „;
}
?>
Выведет строку PHP MySQL Apache. В качестве индексов массива могут выступать не только числа, но и строки:
php
$arr = array(“first» => «PHP»,
«second» => «MySQL»,
«third» => «Apache»);
?>
или
php
$arr[«first»] = «PHP»;
$arr[«second»] = «MySQL»;
$arr[«third»] = «Apache»;
?>
В этом случае массив называется ассоциативным, а его индексы называются ключами. Для вывода элемента массива в строке кавычки (ни двойные, ни одинарные) указывать не следует:
php
echo «$arr[first] $arr[second] $arr[third]»;
?>
Так как у ассоциативных массивов нет индексов, для обхода их введён специальный вид цикла — foreach:
php
foreach($arr as $key => $value)
{
echo «$key = $value
»;
}
?>
В результате работы цикла будет выведено три строки
first = PHP
second = MySQL
third = Apache
Конструкция «$key =>», позволяющая получить доступ к ключу массива на каждом из циклов является не обязательно и может быть опущена:
php
foreach($arr as $value)
{
echo «$value
»;
}
?>
Ряд функций, также позволяют возвращать массивы, например, функция file(), которая читает файл и возвращает его содержимое в виде массива. Каждый элемент массива соответствует одной строке.
php
$arr = file(«text.txt»);
for($i = 0; $i < count($arr); $i++)
{
echo $arr[$i].«
»;
}
?>
Другой полезной функцией является функция explode(), которая позволяет разбить строку на несколько фрагментов, каждый из которых помещается в отдельный элемент массива:
php
$str = «345|mail@mail.ru|login|password»;
$arr = explode(«|»,$str);
for($i = 0; $i < count($arr); $i++)
{
echo $arr[$i].«
»;
}
?>
ВЕБОРУБ – это дружеская встреча в неформальной обстановке веб-разработчиков, экспертов QA, менеджеров проектов, аналитиков и архитекторов, а также других уважаемых профессионалов IT-индустрии. Мы сознательно не называем эту встречу конференцией. Скорее, это антиконференция, без строго протокола, излишнего пафоса и максимально доброжелательной, почти домашней атмосферой.
Основная идея ВЕБОРУБА – предоставить специалистам возможность обсудить важные для них вопросы в непринужденной обстановке. Эта неформальная площадка для поиска решений самых актуальных и злободневных проблем, кулуарного обмена опытом между профессионалами. ВЕБОРУБ поможет всем желающим получить ответы на любые волнующие их темы, причем без лишних условностей.
Формат ВЕБОРУБА выглядит следующим образом:
• отсекаем все лишнее и второстепенное, оставляем только самое важное и значимое;
• никаких спонсоров;
• не тратим время на пересказ всем известных фактов, которые можно найти в открытом доступе. Делимся сугубо практическим личным опытом, своими идеями и соображениями;
• не делаем длинных и утомительных докладов. Программа состоит из коротких выступлений (до 10 минут, максимум 5 слайдов) и неформального общения.
Таким образом, ВЕБОРУБ – это профессиональное общение в свободной обстановке, вдохновение идеями и опытом своих коллег.
Все подробности предстоящего мероприятия – на
Weborub Hero 2011

12 ноября, в Киеве, пройдет конференция «Zend Framework Day» — посвященная популярному PHP фреймворку Zend Framework. Среди докладчиков непосредственные разработчики компонент Zend Framework. Событие соберет лучших PHP и Zend Framework специалистов из Украины, России, Белоруссии и других стран СНГ.
С текущим списком тем и докладчиков можно ознакомиться на
странице.
Событие будет интересно не только тем, кто использует Zend Framework, но и всем веб-разработчикам и PHP программистам в частности.
Место проведения — отель «Казацкий», г. Киев, ул. Михайловская 1/3 (Площадь Независимости).
Со стоимостью участия и другой необходимой информацией вы можете ознакомиться на
странице.
Для участия в конференции необходимо пройти регистрацию на
странице, а затем произвести оплату из личного кабинета.
Сайт конференции —
http://frameworksdays.com/event/zend-framework-day-2011Наши новости в twitter —
http://twitter.com/fwdaysНаша страница в facebook –
http://facebook.com/fwdays
Блуждая по интернету наткнулся на интересную штуку. Часть команды CakePHP отделилась от проекта и создали Lithium — php 5.3+ ориентированный фреймворк. Упоминается о нем довольно мало(в рунете вообще ничего нет). Написал вот эту
статью.
Что такого классного в этом фреймворке? Он очень похож на CakePHP, только лучше. Основные плюсы: гибкость, скорость, и никакого лишнего хлама. Он очень хорошо интегрируется с другими приложениями на php(например Zendframework). Из коробки идет поддержка не SQL баз данных(Mongo, Couch) и вообще очень много вкусностей. Все про что вы знали, но боялись попробовать.
Проект на гитхабе

Представляю Вашему вниманию новую версию ImageCMS 2.5.0.
Изменения коснулись как ядра системы, так и модулей ImageCMS и ImageCMS Shop.
Во-первых: система полностью переведена на новую версию CodeIgniter 2.0.
По ImageCMS сделаны следующие разработки:- Сделана возможность для Галереи загружать все изображения одним архивом.
- Сделана возможность изменить дату добавления для статьи.
- Сделан виджет для выбора языков на фронте.
- Сделана возможность для дополнительного поля textarea добавлять редактор tinymce.
- Сделана возможность присваивать дополнительные поля для категории root
- Сделана возможность удалить всю папку кеша.
- Исправлена ошибка с переключением фотографий, когда указан идентификатор языка.
- Исправленя ошибка с переводом меню.
- Сделана возможность переносить альбомы фотогалереи из категории в категорию.
- Исправлена ошибка с отображением альбомов категории в фотогалереи в админпанели.
- Исправлена ошибка при создании меню на «категорию».
- Исправлена критическая ошибка, которая возникала при переключении языка.
- Исправлен баз в админчасти при редактировании профиля пользователя.
По ImageCMS Shop сделаны следующие разработки:- Сделана возможность создавать и присваивать склады для продуктов.
- Исправлена ошибка с отображением Title на странице отображения товара.
- Сделана возможность присваивать скидки для зарегистрированных пользователей.
- Сделана возможность в поле количество в корзине вводить данные вручную, а не методом селекта.
- Сделана возможность изменить дату создания товара.
- Сделана возможность добавлять товары в корзину через ajax.
- Сделана возможность в настройках указать количество символов после комы для цены.
- Сделана возможность категории делать неактивными.
- Сделана возможность просматривать коменты к товарам со страницы администрирования магазином.
- Сделана возможность при создании свойства выбрать «не показывать на странице товара».
- Исправлена ошибка — в админке в списке валют на активной валюте нет альта.
- Исправлена ошибка с поиском по цене, когда выбрана не дефолтная валюта.
- Исправлен ряд ошибок связанных с выбором способа доставки.
- Сделана возможность просматривать заказы в режиме зарегистрированного пользователя.
За помощь в поиске, исправлении багов, предоставлении идей для модулей благодарим активных пользователей и партнеров системы.
Скачать новую версию можно по ссылке:
www.imagecms.net/downloadНа этом разработки не заканчиваются, уже сейчас нашей командой разрабатывается список доработок для новой версии. Надеюсь на активное обсуждение с Вашей стороны. План и прогресс как всегда будет выкладываться на официальном блоге системы и обсуждаться на форуме.
Все замечания принимаются во внимание.

С радостью представляем Вашему вниманию новую версию
ImageCMS 2.1.6.
В большинстве изменения коснулись
модуля ImageCMS Shop:
- Сделана возможность оплаты популярными способами: webmoney, robokassa, автоматическое создание счета для оплаты через СберБанк и ОщадБанк
- Создан модуль скидок и возможность применять скидки для различных категорий, товаров.
- Сделана возможность вводить «старую цену».
- Для ImageCMS в целом добавлен простой модуль голосования.

ImageCMS — бесплатная
Open-Source CMS для разработки любой сложности сайтов и интернет магазинов.
В жизни ImageCMS произошло грандиозное обновление, над которым проводилась работа последние четыре месяца– запущено версию ImageCMS 2.1.0.
В рамках работы над новой версией были проделаны следующие изменения:
- Усовершенствован администраторский интерфейс, в частности дизайн, а также элементы навигации.
- Осуществлена поддержка php 5.3
- А также добавлено много других возможностей и исправлено более 12 багов.
Со всем списком изменений можете ознакомиться на странице:
http://www.imagecms.net/blog/changelog/versiia_210Кроме этого мы сделали новый базовый шаблон для ImageCMS, в котором значительно расширили функционал и сделали новый более «красивый» дизайн.
Отдельно хочу заметить, что дополнительно был создан полноценный модуль Интернет-магазина ImageCMS Shop.
Кратко о возможностях:
- Создание товаров с дополнительными изображениями и различными ценовыми вариантами товаров;
- Создание свойств товаров, по которым потом можно проводить расширенный поиск и сравнение;
- Создание категорий товаров, назначение групп свойств категориям товаров, возможность добавлять товар в несколько категорий;
- Удобная корзина и работа с заказами;
- Возможность добавлять бренды, способы доставки, способы оплаты, валюты;
- Возможность импорта-экспорта товаров;
Со всеми возможностями ImageCMS и ImageCMS Shop можете ознакомиться, посмотрев на демо-версии:
http://www.imagecms.net/demos-page, либо скачать архив и «пощупать изнутри»:
скачать движок сайта ImageCMS Shop доступен в платном и в бесплатном вариантах. Стоимость полной профессиональной версии $199,95.
В бесплатной версии доступны:
- Создание категорий;
- Создание товаров с дополнительными изображениями и ценовыми вариантами товаров
- Работа с заказами;
- Возможность сравнения товаров;
- Корзина для заказов;
Сравнение версий:
http://www.imagecms.net/vozmozhnostiТо есть по сути даже с помощью бесплатной версии ImageCMS Shop можно создать неплохой Интернет-магазин без каких-либо ограничений по количеству товаров либо категорий.

Для участия нужно пройти
регистрацию, участие — бесплатное.
Некоторые подробности:- Дата проведения, 3 июля 2010 года
- Киев, Украина место проведения выбирается (возможно найдется кто-то из участников, чья фирма сможет предоставить либо оплатить конференц зал)время с 10:00 до 18:00, с перерывом на обед (как же без него) и кофеек (без этого тоже никак)программа конференции будет сформирована по мере регистрации участников и докладчиков
Доклады:Итак все желающие, поучаствовать в SYMFONY CAMP UA 2010 и не только послушать, но и рассказать что-то из своего либо чужого опыта,
symfonycamp.org.ua/about/topics/ предлагайте свои доклады.
Есть желание поддержать конференцию? Разместите один из понравившихся
баннеров на вашем сайте.
Все подробности на официальном сайте конференции
symfonycamp.org.ua.
До появления PHP создание сайтов сводилось к написанию относительно простого HTML кода, который в наших браузерах превращался в статические Интернет страницы. После появления PHP постепенно владельцы сайтов стали все больше и больше переводить свои статические HTML страницы на динамические PHP. Я думаю вряд ли найдется какой либо владелец динамического сайта пожелавший видеть его в статическом виде. Преимущество динамики по сравнению со статикой очевидна.
Ты можешь спросить, почему я должен выбрать именно PHP среди других языков Web-программирования и зачем мне динамический сайт. Знание PHP или просто понимание его открывает большие возможности для твоего сайта. Ты даже можешь скачивать разные уже готовые скрипты необходимы для твоего сайта. Конечно чужие и готовые скрипты не всегда подходят для тебя, и обладая хотя бы базовыми знаниями в PHP программировании ты легко можешь их редактировать под свой сайт.
Использование PHP позволяет тебе добавлять многие интерактивные характеристики как например обратная связь, гостевая книга, «оставить сообщение», счетчики, и более развитые характеристики твоего сайта как управление контентом своего сайта, продвинутое управление сообщений и администрирование своего сайта в целом.
С этим характеристиками сайта ты почувствуешь себя на высшем профессиональном имидже по сравнению с владельцами статических сайтов.
Сам PHP язык относительно не сложный и выучить его легко даже самостоятельно. Перед изучением PHP языка желательны знания HTML ( хотя бы базовые). Не переживай о сложности PHP языка. Он не настолько сложен как это кажется по началу, особенно если правильно подойти к его изучению.
Какие пути изучения ПХП языка наиболее эффективные?
Я предоставлю список важных моментов на мой взгляд:
- Самым главным требованием является желание выучить язык. Нет желания — нет результата.
- Желательно что бы был кто-то кто может тебе объяснить, в идеальном варианте, что бы у тебя был учитель. Но мы обойдемся без этого. Вместо этого я советую использовать онлайн
видеоуроки по PHP и MySQL для чайников который будет нам вместо учителя.
- Практика. Создание и решение разного типа задач своего уровня всегда был актуальной частью в обучении.
- Использование тематических форумов где тебе всегда могут подсказать в твоем вопросе.
- Использование PHP статей.
Мой совет. Не засиживайся долго за изучение PHP, не пытайся выучить все за раз. Пару уроков в день — это достаточно. Выпей чаю между уроками — это настроит тебя на следующий урок. И самое главное — практикуй свои знания, выполняя тематические задачи.

— конференция профессиональных веб-разработчиков, посвященная ведущим технологиям программирования и веб-разработки.
DEVCONF — это новая конференция, которая собрала вместе лидеров сообществ web-разработчиков.
Мы объединили усилия, чтобы сделать эту глобальную конференцию доступной для любого участника, живым и увлекательным местом сбора профессионалов web-разработки.
В данный момент есть идет сбор заявок на доклады
http://www.devconf.ru/phpconf/offersИз уже подданых заявок
— Premature Optimization Mistakes (Ilia Alshanetsky — известный разработчик ядра PHP)
— PHP 5.3 в бою. Опыт с фронта (Doctrine 2, Symfony 2, Zend Framework 2 и др.) Туревич Георгий, Wizartech
— MariaDB — ветка MySQL с большими возможностями — Сергей Петруня (http://askmonty.org/)
— Основы построения масштабируемых высоконагруженных веб-проектов Алексей Рыбак (badoo.com)
— Решения высокой надежности на базе MySQL — Алик Рубин, MySQL
— Пора ли отправлять С на свалку истории? Пишем демонов на PHP с использованием расширения libevent Вадим Крючков, Agunga
— Мониторинг производительности MySQL с использованием performance schema — Алексей Копытов, MySQL
Два года назад Петр Зайцев из Percona попросил меня написать ему плагин поиска для WordPress используя Spinx Search. Сейчас этот модуль работает на mysqlperformanceblog.com.
Данная статья будет полезна тем кто только начинает знакомится с Sphinx Search. Ее можно использовать как начальное руководство для написания простого поисковика на Sphinx Search.
Читать дальше Sphinx Search плагин поиска для Wordpress
Sphinx Search API для PHP пердставляет собой единый класс, который позволяет использовать все возможности Sphinx Search через его интерфейс. Но, такой класс является удобным только для небольших скриптов и задач.
Для более сложных задач и больших веб приложений необходимо другое решение. И это решения является проектированием и реализацией собственной обертки для Sphinx Search API.
Читать полность:
Как вы используете Sphinx Search API?.