Здесь я уже рассказывал о замечательном сайте PHPclasses, где разработчики делятся своими наработками на PHP. С момента первой публикации прошло довольно много времени и появилось очень много новых интересных решений. О некоторых из этих новинок я сейчас и расскажу.
1. PHP MySQL Full Text Search: Выполняет полнотекстовый поиск по MySQL с автокоррекцией
Этот класс выполняет полнотекстовый поиск по MySQL с автокоррекцией.
Он принимает данные ключевые слова и выполняют SQL запрос в данное поле таблицы базы данных MySQL, используя полнотекстовое соответствие.
Если поиск не имеет результатов, класс может выполнить резервный поиск по паттерну.
Опционально класс может выполнить автокоррекцию ключевых слов для поиска, используя класс для коррекции правописания от Felipe Ribeiro.
Этот класс также может изменить таблицу MySQL для добавления индекса полнотекстового поиска. Если нужно, он может изменить тип таблицы на MyISAM в случае, если текущая таблица на подерживает полнотекстовый поиск.
2. Mini Paginator: Показывает ссылки для перехода по разделённому на страницы списку
Если кто-то не понимает, что такое паджинатор, то живое демо здесь.
Этот класс может показывать ссылки для перехода по разделённому на страницы списку.
Он принимает в качестве параметров общее число пунктов в списке, лимит пунктов для показа на одной странице и генерирует HTML для отображения ссылок для перехода по разделённому на страницы списку, получая текущий номер страницы из параметра запроса.
Число навигационных ссылок ограничено заданным числом.
Стиль паджинационных ссылок может быть установлен двумя предварительно настроенными — светлым и тёмным — стилями для использования пользовательских определений стиля в CSS.
3. PHP User Agent Parser class: анализирует пользовательский агент (user agent) и извлекает детальную информацию о браузере
Этот класс может парсить строку user agent и извлекать детальную информацию.
Он может парсить user agent текущего браузера или данную строку user agent.
Этот класс может анализировать детальную информацию user agent и сохранять выявленные характеристики браузера в переменных класса.
На данный момент он может определять тип браузера, тип компьютера (ПК, мобильный, бот), ОС компьютера и такие технологии как JavaScript, фреймы, CSS, VBScript, cookies, фоновые звуки, Java, ActiveX, mobile и т.д.
4. PHP Folder Tree View. Просмотр дерева каталогов: генерирует HTML для отображения списка каталогов и файлов
Этот класс может генерировать HTML для отображения списка каталогов и файлов. Он обходит заданную директорию и генерирует HTML со списком файлов и каталогов этой директории для отображения.
Первыми в списке идут каталоги, затем файлы.
Элементы списка имеют определённые CSS стили, таким образом, они могут быть отображены с индивидуальными иконками.
Дополнительное JavaScript может быть использован для перехода в подкаталоги используя AJAX запросы.
Не умоляя заслуг автора в идее, хотелось бы обратить внимание на явные недостатки. В jQuery коде идёт обращение к файлу Foldertree.php (хотя в архиве лежит файл Folder_tree.php). Следовательно, без этой коррекции вообще ничего не работает. Ещё у меня ничего не отображалось, пока я явно не прописал начальный каталог в файле Folder_tree.php. В общем, тем, кому интересен этот очень простой скрипт, могут сами чуть подправить или дождаться новых версий от автора.
5. PHP DropBox Backup Uploader: Бэкапит локальные файлы как ZIP архив на Dropbox
Этот класс может бэкапить локальные файлы как ZIP архив, отправленный на Dropbox
Он обращается к процессу авторизации OAuth для получения токена на API доступ как текущий веб пользователь.
Этот класс создаёт ZIP архив с файлам из каталога для бэкапа.
ZIP арихв отправляется на сервер DropBox, с использованием запросов отправки API.
Я сам не пробовал этот класс, но лично мне очень интересна реализация процедура авторизации для взаимодействия с Dropbox на PHP. Отписываетесь — как работает, стоит ли внимания эта наработка.
6. Класс для отображения и управления узлами, хранящимися в MySQL
Этот класс может отображать и управлять узлами, хранящимися в MySQL
Он может создавать HTML и JavaScript для отображения дерева узлов, хранящихся в таблице базы данных MySQL.
Генерируемое дерево содержит кнопки добавить, удалить и отредактировать узлы дерева через AJAX запросы в PHP скрипты, которые обновляют таблицу базы данных для выполнения запрошенных манипуляций с узлами дерева.
Чтобы заработал нужно в конфигурационный файл ввести данные для доступа к MySQL, а ещё нужно создать тестовую базу данных и импортировать туда данные из приложенного файла sample.sql. С тестовой базой данных всё работает, а вот при попытке переключиться на другую базу данных, у меня возникла ошибка. Т.е. как концепт наглядного отображения базы данных скрипт не плох, а вот для наглядного анализа производной базы данных, по крайней мере на данном этапе, решение не работает.