proft.com.ua [Блог о Web, IT, life]

Примеры реализаций паттернов проектирования в PHP

121 PHP 2 комментария

Про паттерны (шаблоны) проектирования уже много было сказано, если вкратце - это готовые подходы к решению определенных задач. Более подробно читайте на Wikipedia - Шаблоны проектирования, или монументальный труд “банды четырех” (GoF):

Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж. Приемы объектно-ориентированного проектирования. Паттерны проектирования.

В этом же посте я приведу структурную диаграмму паттернов и ссылки на сайты с примерами реализаций на PHP.

Далее »

Roam

32 Жизнь Комментариев нет

Сегодня наткнулся на отличный видео ролик о катании на bike - Roam. Хорошая съемка, красивые места, мелодичная музыка и офигительное катание! Кто не видел и не ровно дышит к катанию на bike — рекомендую! Само видео можно найти на торентах.

На тюбеке есть отрывки: ROAM - DownHill

К сожалению погода совсем не способствует катанию, потому сегодня занимался подготовкой велика на зиму. Полезный материал, если кто не знает как подготовить bike для консервирования до весны:

Комментирование кода в VIM

70 Vim Комментариев нет

Для VIM существует отличный плагин для комментирования исходников, имя ему The NERD Commenter. Он предоставляет множество операции и стилей для комментирования текстов программ, скриптов,  конфигов и т.д. Заявлена поддержка комментирования для 315 типов файлов,  как неудивительно есть большинство и тех которые нужны мне: apache config, css, javascript, php, xhtml, python, sql, xml, etc.

Далее »

Сайт “Вінницька обласна нотаріальна палата”

60 Музыка, Портфолио Комментариев нет

Офіційний сайт Вінницької обласної нотаріальної палати: корисна інформація про нотаріус, відомчі акти, діюче законодавство, правозастосувальницьку практику, притаманну нотаріусам символіку, тошо. Консультація, форум.

Расширение для Lighter Menus

142 WordPress Комментариев нет

Lighter Menus – плагин для Wordpress, который  изменяет меню в административной панели, делая его более компактным и удобным в управлении, см. скришот.


Для тех пунктов меню, для которых не нашлась заранее подготовленная иконка, отображается , мне со временем эта иконка надоела и я решил расширить Lighter Menus, что бы он отображал заданные иноки там где это возможно.

Далее »

Типы полей в MySQL

75 MySQL Комментариев нет

MySQL поддерживает три группы типов полей: числовые, дата и время, строковые (символьные).

Тип Применение Размер
TINYINT целые числа самой маленькой разрядности Диапазон чисел со знаком: –128 … 127, без знака(unsigned) - 0 … 255
SMALLINT целые числа маленькой разрядности Диапазон чисел со знаком: –32768 … 32767, без знака(unsigned) - 0 … 65535
MEDIUMINT целые числа средней разрядности Диапазон чисел со знаком: –8388608 … 8388607, без знака(unsigned) - 0 … 16777215
INT или INTEGER целые числа обыкновенной разрядности Диапазон чисел со знаком: -2147483648 … 2147483647, без знака(unsigned) - 0 … 4294967295
BIGINT целые числа большой разрядности Диапазон чисел со знаком: -9223372036854775808 … 9223372036854775807, без знака(unsigned) - 0 … 18446744073709551615
FLOAT числа с плавающей запятой (одинарной точности) Диапазон от –3.402823466E+38 до –1.175494351E-38 и от 1.175494351E-38 до 3.402823466E+38
DOUBLE, REAL числа с плавающей запятой (двойной точности) Диапазон от -1.7976931348623157E+308 до -2.2250738585072014E-308 и от 2.2250738585072014E-308 до 1.7976931348623157E+308
DATE дата Диапазон от ‘1000-01-01′ до ‘9999-12-31′, отображается в виде ‘YYYY-MM-DD’
DATETIME комбинация даты и времени Диапазон от ‘1000-01-01 00:00:00′ до ‘9999-12-31 23:59:59′, отображается в виде ‘YYYY-MM-DD HH:MM:SS’
timestamp временная отметка Диапазон от ‘1970-01-01 00:00:00′ до 2037 года, отображается в виде YYYYMMDDHHMMSS или YYMMDDHHMMSS или YYYYMMDD или YYMMDD
TIME время Диапазон от ‘-838:59:59 до ‘838:59:59′, отображается в виде ‘HH:MM:SS’
YEAR год (2-х или 4-х циферное представление) Диапазон от 1901 до 2155 (для 4-х циферного представления) и 1970-2069 (70-69, для 2-х циферного представление), отображается в виде ‘YYYY’
CHAR строка фиксированной длины Диапазон от 1 до 255 символов, пробелы по краям обрезаются при получении значения, заполняется пробелом до заданной длины (если символов меньше, чем заданная длина), сортировка и сравнение значений регистро-независимое
VARCHAR строка изменяющийся длины Диапазон от 1 до 255 символов, пробелы по краям обрезаются при сохранении, сортировка и сравнение значений регистро-независимое
TINYBLOB, TINYTEXT столбец типа BLOB или TEXT, максимальная длина 255 символов
BLOB, TEXT столбец типа BLOB или TEXT, максимальная длина 65535 символов
MEDIUMBLOB, MEDIUMTEXT столбец типа BLOB или TEXT, максимальная длина 16777215 символов
LONGBLOB, LONGTEXT столбец типа BLOB или TEXT, максимальная длина 4294967295 символов
ENUM перечисление строковый объект, может иметь только одно значение из списка, максимальное количество уникальных элементов - 65535
SET множество строковый объект, может иметь 0 или больше значений из списка, максимальное количество элементов - 64

Неправильная кодировка в MySQL

85 MySQL Комментариев нет

Наткнулся на действенный способ исправления неправильной кодировки в MySQL, когда БД и таблицы в latin1, а надо что бы было utf-8 или cp1251.

Кодировки БД MySQL

В статье описаны несколько способов конвертирования кодировок, среди которых упоминается мощный конвертор кодировок iconv доступный под Linux.

Для тех, кто все еще обитает под Windows есть портированный вариант этой программы под эту ОС. Это стало возможно благодаря проекту GnuWin32, в котором доступны многие утилиты из мира Linux, в том числе и iconv.

Iconv под Windows берем с страницы GnuWin32 Packages.

Пример использования: iconv -f UTF-8 -t CP1251 file_in.txt > file_out.txt

William von Hagen - Ubuntu Linux Bible

4 Чтиво Комментариев нет

Название: Ubuntu Linux Bible
Автор: William von Hagen
Дата издание: 2006
Страниц: 912

Содержание:

Acknowledgments.
Introduction.
Part I: Getting Started with Ubuntu Linux.
Chapter 1: The Ubuntu Linux Project.
Chapter 2: Installing Ubuntu.
Chapter 3: Installing Ubuntu on Special-Purpose Systems.
Part II: Ubuntu for Desktop Users.
Chapter 4: Basic Linux System Concepts.
Chapter 5: Using the GNOME Desktop.
Chapter 6: Using Command-Line Tools.
Chapter 7: Working with Text Files on Ubuntu.
Chapter 8: Reading and Sending Mail with Evolution.
Chapter 9: Surfing the Web with Firefox.
Chapter 10: Creating and Publishing Documents.
Chapter 11: Other Office Software: Spreadsheets and Presentations.
Chapter 12: Working with Graphics.
Chapter 13: Working with Multimedia.
Chapter 14: Would You Like to Play a Game?
Chapter 15: Connecting to Other Systems.
Chapter 16: File Transfer and Sharing on Ubuntu.
Chapter 17: Consumer Electronics and Ubuntu.
Chapter 18: Software Development on Ubuntu.
Part III: Ubuntu for System Administrators.
Chapter 19: Understanding the Ubuntu Startup and Shutdown Processes.
Chapter 20: Adding, Removing, and Updating Software.
Chapter 21: Managing Users, Groups, Authentication, and Advanced Permissions.
Chapter 22: Backing Up and Restoring Files.
Chapter 23: Adding Hardware and Attaching Peripherals.
Chapter 24: Network Configuration and Security.
Chapter 25: Going Wireless.
Part IV: Configuring Servers on Ubuntu.
Chapter 26: Setting Up a Web Server.
Chapter 27: Setting Up a Mail Server.
Chapter 28: Setting Up a DHCP Server.
Chapter 29: Setting Up a DNS Server.
Chapter 30: Setting Up a Print Server.
Chapter 31: Setting Up an NFS Server.
Chapter 32: Setting Up a Samba Server.
Index.

Примеры использования PDO

174 PHP Комментариев нет

С релизом PHP 5.1 появился новый абстрактный слой баз данных (БД) - PDO (PHP Data Objects).

Назначение:

  • Общий интерфейс доступа к любому числу БД
  • Написан на С, следовательно большая скорость выполнения, по сравнению с классами написанными на PHP
  • Упрощение интерфейса работы с БД

Поддерживает следующие драйверы БД:

  • MySQL 3,4,5
  • PostgreSQL
  • SQLite 2 & 3
  • ODBC
  • DB2
  • Oracle
  • Firebird
  • FreeTDS/Sybase/MSSQL

Далее »

phpDocumentor

92 PHP Комментариев нет

phpDocumentor предоставляет автоматическое документирование исходников вашего php кода.

Коротко о возможностях:

  • вывод документации в HTML, PDF, CHM, XML DocBook
  • два режима управления: через веб интерфейс и командную строку
  • настраиваемый вывод в шаблонах на базе Smarty
  • автоматическое связывание, диаграмма наследования классов и умное переопределение
  • настраиваемая подсветка кода, перекрестные ссылки (phpxref)
  • парсинг README/CHANGELOG/INSTALL/FAQ файлов и включение их в документацию
  • генерация списков todo из @todo тегов в коде
  • легкое расширение документации для специфических нужд с помощью Converter
  • конфигурационный файл позволяет настраивать повторяющиеся и рутинные задачи
  • несколько HTML шаблонов оформления документации

Далее »

Страница 2 из 12«12345»...Последняя »
 
Powered by WordPress