Показаны сообщения с ярлыком php. Показать все сообщения
Показаны сообщения с ярлыком php. Показать все сообщения

24 декабря 2013 г.

Проблема при установке osTicket "This webpage has a redirect loop"

По работе потребовалось прикрутить к готовому проекту систему поддержки — после изучения готовых решений мой менеджер остановился на osTicket (http://osticket.com).

Аккуратно выполняя действия предписанные инструкцией по установке, после распаковки файлов я натолкнулся на неочевидную багу: при попытке перейти на страницу установки (your_app_path/setup/) выводилось сообщение: "This webpage has a redirect loop".

Гуглопоиск не дал ответа на решение проблемы и я разобрался сам: оказывается после распаковки файлов и настройки вашего веб-сервера в папке проекта необходимо скопировать файл /include/ost-sampleconfig.php под именем /include/ost-config.php — после этого установка стартует нормально. Успехов!

19 февраля 2012 г.

От PHP к Ruby (Сходства и различия)

перевод с официального сайта http://www.ruby-lang.org

PHP широко используется для разработки web-приложений, однако если вы собираетесь попробовать Ruby on Rails или хотите писать на языке предназначенном для общего использования, то Ruby это то что вам нужно.

Сходства
  • Ruby как и PHP имеется механизм динамической типизации данных. Вы можете определять перменные непосредственно во время выполнения сценария.
  • Имеются классы, и вы можете контролировать доступ к ним, идентично PHP 5 присутсвуют public, private и protected уровни доступа.
  • Некоторые переменные также начинаются с $, как в PHP (но не все)
  • В Ruby присутсвует eval функция.
  • Вы также может использовать строчную интерполяцию. ”$foo is a $bar” вы можете написать как ”#{foo} is a #{bar}” — как и в PHP, это не распространяется на одиночные кавычки.
  • Идентичный heredoc механизм и синтаксис.
  • В Ruby есть исключения (exceptions -> raise или fail), как в PHP 5
  • Также имеется огромная библиотека стандартных механизмов.
  • Массивы (array) и хэш-массивы (hashes) устроены подобным образом, если вы замените конструкцию array() на { и }, то PHP array('a' => 'b') превратится Ruby {'a' => 'b'}.
  • true и false устроены аналогично PHP, но null обозначается nil

Различия
  • В Ruby строгая типизация данных. Вы должны использовать методы .to_s, .to_i и т. д. для конвертации строк, чисел и т.д. вместо того чтобы оставлять эту работу языку.
  • Строки, числа, массивы, хэш-массивы и все остальные сущности в Ruby являются объектами.
  • Скобки не являются обязательными при вызове метода, кроме тех случчаев когда нееобходимо передать параметры в тело метода
  • Вместо соблюдения оговоренного пространства имён например таких как подчеркивания (Underscores) или camelCase, стандартные библиотеки и расширения оформлены в классы и модули.
  • Reflection изначально имеется в объектах, вам не нужно подключать Reflection классы как в PHP 5
  • Переменные Ruby передаются по ссылкам. Присваивая переменной объект вы ссылаетесь на него, а не получаете копию.
  • В Ruby нет абстрактных классов (abstract classes) или интерфейсов (interfaces)
  • Хэш-массивы (hashes) и массивы (arrays) не являются взаимозаменяемыми
  • Только false и nil являются false, а вот 0, array() и пустая строка "" в теле условия определяются как true.
  • Практически все действия являются вызовом того или иного метода, даже raise (throw в PHP).