Sajgak.ru

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта
Php

Разработка сайтов

Я окончил математико-механический факультет. Во время учёбы мне везло с преподавателями программирования, которые меня познакомили с языками Pascal, С++, Visual С++, Java, С# .NET

Более 10 лет занимаюсь веб-программированием. В начале я писал на чистом PHP/MySQL. Затем стал использовать CMS Joomla. С 2012 года пользуюсь CMS 1C-Битрикс и Wordpress.

Обновлено 01.10.2016 10:05
 

Установка Codeception на Windows

Процесс установки и написания первого теста описан на официальном сайте. Ещё есть очень хорошее видео на хабре.

Обновлено 28.09.2016 10:02
 

Регулярные выражения PCRE в PHP. Шпаргалка c примерами

Для работы с регулярными выражениями PCRE удобно:

  • Если вы пользуетесь Eclpse, то есть плагин RegEx Util
  • Моя шпаргалка для работы с регулярными выражениями:
Обновлено 30.10.2012 18:11
 

установка и использование XDebug в ECLIPSE (PDT Eclipse или PHPEclipse)

Установка XDebug

  • Качаем нужный файл (соответствующий windows и версии php) c сайта http://xdebug.org/download.php
  • Помещаем его в папку php/ext/ 
  • Добавляем в php.ini
    zend_extension_ts="C:\Program Files (x86)\PHP\ext\php_xdebug-2.1.2-5.3-vc9.dll"
    xdebug.remote_enable=On
    xdebug.remote_autostart=On
    xdebug.remote_handler=dbgp
    xdebug.remote_host=127.0.0.1
    xdebug.remote_port=9000
    xdebug.remote_mode=req
     
  • Проверить корректность установки можно с помощью ф-ии . Вы должны увидеть раздел XDebug.
  • См. так же: http://drupalcookbook.ru/recept/ustanovka-nastrojka-otladchika-xdebug

Eclipse PDT

  • открыть Window>Preference>Php>PHP Executables>Add ввести рядом с Executable Path – путь до файла php.exe (с именем файла в конце его). Выбрать PHP Debugger XDebug. Ввести какое-нибудь имя (например, "php 5.3") и нажать OK.
  • открыть Window>Preference>Php>Debug и выбрать PHP Debugger XDebug.  нажать OK.
  • открыть Window>Preference>Php>Debug>Installed Debuggers и проверить, что порт Xdebug совпадает со значением в php.ini. Если нет - поменять где-нибудь.
  • открыть Window>Preference>Php>Debug>PHP Servers и проверить настройки.
  • Запускаем Debug с помощью Run>Debug As>PHP Web Page. (Если нет такого пункта, проверяем, что в Eclipse в данный момент выделена область редактирования нужного файла, а не какое-нибудь другое окошко.) При первом запуске он спросит Launch URL - Введите туда URL, который вы хотите тестировать (В Joomla, скорее всего, он не совпадёт с путём до php файла, который Вам предложат. Проще всего для этого войти в браузер, открыть там нужную страницу и скопировать её сюда).
    • При последующих запусках спрашивать уже не будет. Чтобы поменять - нужно войти в Run>Debug>Debug Configuration>Php Web Page> [найдите нужную конфигурацию,, которая была автоматически создана при первом запуске]> и поменяйте значение URL на нужное
    • По умолчанию будет открываться страница во встроенном браузере. Поменять это можно в Window>Preference>General>Web Browser
    • Когда откроется страница во встроенном (или каком-либо другом) браузере обратите внимание на конструкцию вроде следующей:
      1
      
      &XDEBUG_SESSION_START=ECLIPSE_DBGP
      в URL адресе. Вы можете открыть любой браузер и добавить её к URL (в тот момент, когда запущен Debug) и - ура!
    • Вы можете переключиться в другую перспективу PHP Debug через Windows>Open Perspective>PHP Debug. В этой перспективе вы имеете больше возможностей для Debug`а.
    • Вы можете настроить автоматическое переключение перспективы на PHP после остановки Debug  (в Window>Preference>Php>Debug>Workbench Options)

PhpEclipse

  • Для начала переключитесь в перспективу Debug (Windows>Open Perspective>Debug) , после чего добавьте в тестируемый файл breakpoint
  • открыть Window>Preference>PhpEclipse>XDebug ввести рядом с Php Interpreter – путь до файла php.exe (с именем файла в конце его)
  • Debug>Debug configuration... Создаём новую конфигурацию дважды щёлкнув на XDebug Remote Script
  • Вводим имя нашего проекта и любое название в Ide Identification String (рекомендуется использовать короткое и запоминающееся название)
  • Перейти ко вкладке Pathmap. Она определяет как Eclipse трансформирует локальные пути к удалённым путям. Нажмите на кнопку New. И добавьте туда Local path – путь до корня проекта на машине, на которой запущен Eclipse; Remote Path – путь до корня проекта на Web-сервере. (Если они находятся на одной и той же машине, то пути совпадут)
  • Нажать на кнопку Debug
  • Запустить в браузере тестируемую страницу с припиской ?XDEBUG_SESSION_START=[Ide Identification String]

Ссылка: http://www.phpeclipse.com/wiki/Howto/XDebugAndPHPEclipse 

Обновлено 10.11.2011 17:18
 

Предупреждение "Deprecated: Assigning the return value of new by reference is deprecated in"

Это связано с использованием PHP 5.3. Подробнее: http://php.su/php/?migration53

Можно либо

1) перейти на более старую версию PHP

2) отключить показ DEPRECATE ошибок

Для этого в  php.ini установить

1
error_reporting =E_ALL &~ E_DEPRECATED

или в PHP файле задать

 

1
error_reporting (E_ALL &~ E_DEPRECATED);
Можно с помощью функции phpinfo() проверить какое в тот или иной момент установлен уровень error_reporting. Он показывается там числовым значением. 32767. Если не работает - проверьте наличае других вызовов функции error_reporing

 

3) немножко поредактировать код.

Большинство DEPRECATED в коде Joomla 1.0 и разных модулей было связано именно с использованием & перед new. Например:

1
$module		=& new ExtendedMenuModule();

Нужно просто удалить &.

Однако таких мест много. Но, если мы используем Eclipse, то просто заменить все вхождения "& new" на "new" во всех файлах. Для этого в меню выбираем Search>Search. Далее выбираем FileSearch, в поле containing text вводим "& new", нажимаем на кнопку Replace. Через некоторое время появится окошко Replace Text Matches. В нём в поле With вводим " new".  Если не сработало (у меня почему-то так произошло) обновляем весь проект (устанавливаем курсор на папкук проекта и нажимаем F5) и повторям замену.

Возможны и исключения. Например, \modules\exmenu\loader\menu.menuloader.class.php on line 286. Если там удалить &, то меню работпет некорректно.

Обновлено 11.10.2011 17:29
 


Страница 1 из 2

Статьи и заметки о создании сайтов

Другие статьи и заметки

Разработка сайтов

Я окончил математико-механический факультет. Более 10 лет занимаюсь веб-программированием. На данный момент, в основном, пользуюсь CMS Wordpress и 1С-Битрикс. По поводу создания или доработок сайтов на этих и других CMS пишите мне:

Подробнее обо мне и о реализованных проектах

Рекомендую

Рекомендую всем хостинг 1gb.ru. Работает хорошо. Особенно радует техподдержка. Как-то раз они даже в мой PHP-код залезли и помогли решить проблему.

Кроме того, рекомендую всем хостинг Timeweb. Не очень мне нравится техподдержка (по сравнению с 1gb). А так же не рекомендую VDS на FreeBSD. Но, в остальном, всё работает замечательно. Замечательно подходит для больших проектов, особенно на Битриксе.