SpeedPHP 3 изменился с поддержки исключительно MySQL/Smarty на поддержку нескольких типов баз данных, а также нескольких механизмов шаблонов и механизмов кэширования данных.
SpeedPHP 3 усиливает и улучшает большинство исходных функций и архитектуры, достигая баланса между быстротой, легкостью и простотой расширения.
В SpeedPHP 3 исправлены все ошибки и ошибки со времен SpeedPHP2, а его стабильность вышла на новый уровень.
Обновление SpeedPHP версии 2 до SpeedPHP версии 3 очень просто и требует всего лишь следующих шагов:
Загрузите файлы SpeedPHP 3.
Удалите исходные файлы SpeedPHP 2 и замените их файлами SpeedPHP 3.
Для исходного приложения SpeedPHP 2 вам необходимо добавить функцию spRun(); в нижней части входного файла, чтобы запустить приложение.
Статические файлы HTML, созданные исходным spHtml, необходимо удалить, а временную папку (обычно каталог tmp) необходимо удалить и создать заново.
Поле ввода зашифрованного пароля в исходном spAcl стало независимым расширением в SpeedPHP 3. Перейдите в раздел расширений форума SpeedPHP, чтобы загрузить новое расширение md5password (исходное поле ввода зашифрованного пароля) для установки и использования.
Как использовать SpeedPHP 3:
Использование SpeedPHP 3 в основном такое же, как и использование второго издания SpeedPHP, поэтому руководство второго издания SpeedPHP также можно использовать и для SpeedPHP 3.
Различные инструкции по настройке базы данных. Инструкции по настройке механизма шаблонов. Инструкции по настройке кэша. Быстрый механизм шаблонов, простое использование. Представляем новые функции:
1. Поддерживает несколько типов баз данных: MySQLi, Sqlite, Oracle, MsSQL, PDO и т. д.
2. Добавьте версию филиала SAE для облачных вычислений SAE и версию филиала GBK (исключительно для платформы облачных вычислений Sina).
3. Поддерживает несколько шаблонизаторов: Smarty, Template Lite, Speedy и т. д.
4. Поддерживает несколько механизмов кэширования: Memcache, Xcache, APC, eAccelerator и т. д.
5. Улучшить структуру драйверов базы данных и механизма шаблонов, улучшить логическую структуру контроллера и класса представления, сделать ее более разумной и дополнительно сэкономить ресурсы.
6. Многие исходные функции были улучшены, улучшена статическая функция генерации spHTML и улучшен режим статического URL-адреса.
7. Добавьте spRun, spDB, replace, effectRows, runSql, escape,
8. Многие ошибки с момента выхода второй версии SpeedPHP были исправлены, а стабильность значительно улучшена.
9. Чтобы поддерживать согласованную конфигурацию приложения, участникам пакета обновления 2 необходимо только добавить spRun в файл записи.
10. Будьте простыми, легкими в освоении и легкими.
Журнал изменений
Расширение UrlRewrite было обновлено, добавлено сопоставление контроллера/действия, удалено скрытие основного/индекса, а также можно настроить скрытие параметров.
Добавлена функция-член escape для замены __val_escape для фильтрации строк и исправлен режим значения шаблона. Если значение ложно, оно не будет отправлено в шаблон. Это может исправить недостаток, заключающийся в том, что цикл Smarty не может определить, существует ли значение.
Изменена логика обработки функции-члена replace spModel, чтобы избежать ошибочного добавления новых записей при отсутствии изменений данных.
Оптимизирован режим автоматического вывода страниц. Автоматический вывод теперь управляется spController.
Исправлена ошибка в функции импорта. Исправлен способ обработки нулевых значений в драйвере. Удалены избыточные операторы записи SQL из некоторых баз данных. Исправлены драйверы Oracle и MsSQL. Исправлена ошибка в драйвере sqlite. Исправлена ошибка, из-за которой драйвер pdo не мог получить данные.
Функция __val_escape spModel изменена для определения нуля, чисел и т. д. spCache определяется как дочерний класс spModel одноразового использования. Подобно spVerifier, его нельзя вызывать несколько раз. Устраните проблему в функции getTable драйвера mssql. Замените конструктор spController. код созданного объекта представления в конструкторе spController Перемещен в spRun.
Исправлена логическая обработка конфигурации «url_path_base» и исправлена проблема обработки имени таблицы в лимите в драйвере mssql.
Платформа SpeedPHP присоединяется к ответвлению версии среды облачных вычислений SAE.
В инфраструктуру SpeedPHP добавлена ветвь версии GBK и изменена информация об авторских правах в файлах кода платформы SpeedPHP.
spModel добавляет метод replace для обновления записей, соответствующих условиям. Если запись не существует, будет добавлена новая запись.
Исправлена логика очистки данных пейджера spPager. Исправлена логика функции has в spArgs, которая определяет, существует ли переменная и превышает ли длина значения переменной 0.
spError запишет информацию об ошибке с помощью error_log в среде Release.
Экранировано сообщение об ошибке инициализации session_start. Оптимизирована логика генерации spHtml. Исправлен метод и логика запроса spHtml. Он может поддерживать объект, имя класса и имя функции в качестве зарегистрированных дескрипторов. Скорректирован метод приглашения и логика spHtml, чтобы удалить ненужные настройки url_getter и url_setter в html и напрямую использовать функции-члены spHtml.
Исправлено нулевое возвращаемое значение __val_escape.
spModel добавляет метод runSql, который заменит запрос для выполнения операторов SQL. Метод запроса сохраняется для прямой совместимости, но рекомендуется использовать метод runSql с более понятным смыслом.
spModel добавляет метод effectRows() для получения количества записей, на которые влияют операции обновления, создания и другие операции.
Функция spRun добавлена для разделения основного процесса Speedphp и двух этапов выполнения пользовательского кода, так что можно добавить некоторые коды операций, требующие библиотеки классов, но до выполнения пользовательского кода. В то же время при обновлении до этой версии фреймворка вам необходимо внести изменения в файл записи: в файле записи (обычно index.php): require(SP_PATH."/SpeedPHP.php"); строку, добавьте вызов функции spRun( );
Переменная conn, управляемая базой данных, изменяется на общедоступную.
Улучшите метод заполнения полей spHtml для параметров, используйте json_encode для замены менее эффективной и строго типизированной сериализации, чтобы параметры сгенерированной страницы могли быть более свободными и эффективными. Однако в то же время в существующем коде, обновленном до этой модификации, необходимо будет перегенерировать статические HTML-файлы.
Если конфигурация url_path_base по умолчанию пуста, файл записи — /index.php.
Исправлены типографские ошибки в классе spAccessCache. Добавлена конфигурация sp_notice_php. Разработчики могут настраивать программу подсказок об ошибках. Изменено сообщение о том, что метод spContrller не найден. Скрыто сообщение NOTICE, генерируемое при перезаписи массива конфигурации spConfigReady. Проблемы с именами объектов зарегистрированы функцией шаблона и удалены. Экспериментальная функция «Зашифрованное поле ввода пароля».
Класс spAccessCache поддерживает расширение функции spAccess за счет дополнительных методов кэширования в расширенной форме. В настоящее время spAccessCache поддерживает следующие типы драйверов кэша: Это позволяет разработчикам иметь быстрое и простое решение для механизма шаблонов в дополнение к механизмам шаблонов, таким как Smarty.
Добавлены классы драйверов базы данных db_pdo, db_pdo_mysql, db_pdo_sqlite для поддержки интерфейса базы данных PDO. В настоящее время поддерживаются связи PDO mysql и sqlite, которые добавляются в класс драйвера базы данных db_sae MySQL для добавления в класс драйвера базы данных db_oracle. поддерживаются типы баз данных для добавления в класс драйвера базы данных db_sqlite, поддержка типа базы данных Sqlite для присоединения к классу драйвера базы данных db_mssql, поддержка типа базы данных MSSQL для присоединения к классу db_mysqli, поддержка типа драйвера базы данных MySQLi, изменение базы данных mysql. имя драйвера в db_mysql, добавьте метод форматирования предела, измените метод создания экземпляра в конструкторе db_mysql и добавьте поддержку mysql. В файл библиотеки классов TemplateLite добавлен режим длинной ссылки на базу данных. Две переменные $tbl_name и $_db изменены на. public Конструктор spModel переписан для поддержки драйвера нескольких типов баз данных. После получения данных подкачки они будут удалены, здесь это не вызовет путаницы в следующих данных подкачки. Изменен способ реализации операторов SQL логики ограничений, чтобы справиться с проблемой, заключающейся в том, что некоторые типы баз данных не поддерживают синтаксис ограничений.
В сочетании с spController изменяется экземпляр механизма шаблонов. Улучшен способ присвоения значений драйверу механизма шаблонов для выполнения отказоустойчивой обработки функций, связанных с шаблоном, для поддержки механизмов шаблонов, которые не могут регистрировать функции шаблона. Улучшите метод сетевого чтения spHtml, чтобы избежать проблемы невозможности чтения файлов и создания пустых HTML-страниц. Добавьте серию методов сетевого чтения CURL, которые будут использоваться, когда file_get_contents не может прочитать сетевые данные. Улучшите запрос file_get_contents и определите, запрещает ли среда PHP чтение по сети в случае сбоя чтения по сети. Ограничивает spHtml созданием HTML-файлов только в пределах APP_PATH. Исправлены логические проблемы в функциях чтения и генерации URL-адресов spHtml.
Переменные механизма шаблонов spController были переопределены для поддержки нескольких механизмов шаблонов. Исправлена проблема чтения функции __get. Исправлена проблема, заключающаяся в том, что когда spArgs получает значение, значение по умолчанию не может быть 0.
Изменено значение по умолчанию для конфигурации db_driver_path и добавлена функция spDB. SpDB позволяет упростить использование подкласса spModel и напрямую работать с таблицей (принадлежащей spModel) без определения подкласса spModel. Удалите амперсанд spConfigReady, исправьте проблему с путем автоматического вывода шаблона, измените расположение драйвера mysql, перенесите каталог Smarty и перенесите драйвер mysql, удалите файл spDB, и функция spDB будет помещена в spFunctions в качестве основной функции в будущее.
Добавьте каталог Drivers и поместите основной класс драйвера программы. Когда представление закрыто, вы все равно можете использовать $this->variables и $this->display для назначения шаблона. Однако синтаксис его шаблона должен быть обычным синтаксисом PHP.
Расширять