php

...старых методик разработки.

Для тех, кто встречается с (мягко говоря) странным кодом и php программистами-динозаврами, будут полезны несколько следующих конфигов. Итак, идём по ошибкам:

Call-time pass-by-reference has been deprecated

Лечение тривиальное:

allow_call_time_pass_reference = On

Почему? Читать .

Свежая версия гайда для полного победилдо над Windows в качестве ОС для web-разработки включая настройку XAMPP, PHP, PEAR, Drush, UnxUtils и прочие

Preface

Не буду многословно и нудно описывать свой дао, поэтому начну с требований к реализации...

Нередко бывает так, что переменные из php было бы здорово обрабатывать как-то в javascript, но делать ради этого ajax запрос накладно. Есть выход! Для этого можно использовать функцию , в которой можно "вытолкнуть" переменную в javascript массив Drupal.settings с помощью

Очень важный момент, когда требуется отлаживать отправку почты php скриптами - это локальный SMTP сервер. На просторах интернета нашёл быстрое и удобное решение.
Качаем Test Mail Server Tool и устанавливаем!
Идём в php.ini
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = localhost
; http://php.net/smtp-port
smtp_port = 25

Ну и перезапускаем web-сервер...
Сама программка запускается ручками и висит в tray, а настройки очень простые.

Устанавливаем пакет:

apt-get install php5-xcache

Настраиваем в конфигурационном файле:

nano /etc/php5/conf.d/xcache.ini

xcache.admin.enable_auth = On
xcache.admin.user = "test"
xcache.admin.pass = "098f6bcd4621d373cade4e832627b4f6" // md5 хэш пароля "test"
xcache.size = 256M
xcache.coverager = On
xcache.coveragedump_directory = /tmp

MD5 хэш можно сгенерировать тут
Теперь создаём путь к админке:

nano /etc/apache2/conf.d/xcache.conf

В файле /etc/apache2/apache2.conf, в самом конце вписываем:

ServerSignature Off
ServerTokens Prod

В /etc/php5/apache2/php.ini ищем expose_php и изменяем его таким образом:

expose_php = Off

И перезагружаем Apache2:

service apache2 restart

Честно говоря, подобного рода информации куча на просторах инета. Данная запись - короткая инструкция, написанная по просьбе друга. Итак!
1. Станем на время супер пользователем

sudo -s

2. Открываем консоль своего Debian/Ubuntu Linux и пишем ( вставляем ) следующие строки:

Удобней всего на локальной машине разработчика не держать sendmail или что-монструозное, а просто сохранять отправленную почту в папку в виде файлов.
Чтобы всё работало нужен пакет php5-cli. Для deb систем:

apt-get install php5-cli

На одном из разрабатываемых сайтов потребовалось сделать список мест, где человек будет появляться с определённой периодичностью. В качестве требования - 3 поля: электронный адрес, номер телефона и адрес...
Ясно, что на дворе уже 2012 год и никто статическим текстом адрес на сайтах не пишет. Как минимум ссылка на карты Google, Yandex, Bing и т.д. и наш клиент тоже :)

eAccelerator - очень полезная штука не только на сервере, но и на машине разработчика PHP. Установить в Ubuntu очень просто
В консоли linux

cd /tmp
sudo wget http://sourceforge.net/projects/eaccelerator/files/latest/download.zip
unzip download.zip

Разархивируется в eaccelerator-<версия> туда и пойдём

cd eaccelerator-0.9.6.1/

Далее настройка, сборка и установка:

Drupal → Drupal 6 token api

drupal php drupal 6

Модуль Token для Drupal 6 позволяет создавать токены для пользовательских данных переменных, что упрощает генерацию, скажем заголовков страниц в зависимости от содержимого.
Приведём простой пример использования Token API для Ubercart.
Итак в API модуля Token есть два хука:

hook_token_values($type, $object = NULL, $options = array())

Этот хук наполняет токен содержимым.

hook_token_list($type = 'all')

Этот хук регистрирует токен в списке токенов.

nix →

ubuntu linux php ubuntu 11.10

Переходим в режим root'а

sudo -s

Устанавливаем пакеты для PHP5

apt-get install php5-dev php-pear

Устанавливаем расширение PECL

pecl install uploadprogress

После чего открываем конфигурационный файл PHP.INI

nano -w /etc/php5/apache2/php.ini

И в раздел extensions прописываем:

extension=uploadprogress.so

После чего - перезагружаем Apache2

/etc/init.d/apache2 restart

Всё просто:
$app = JFactory::getApplication();
htmlspecialchars($app->getCfg ('sitename'));

Кстати, для справки, в Joomla 1.5 это выглядит вот так:
$mainframe->getCfg ('sitename');