Минимальный скелет приложения для Zend Framework 3

Решил попробовать не собирать каждый раз при старте нового проекта свой «каркас» приложения, а взять  уже готовый фреймворк в стиле MVC и попробовать использовать его. Пока выбор пал на Zend Framework, потому что там похоже действительно самый минимум. Он не «раздутый», который для использования не требует недель изучения для «старта» (типа YII).  С фреймворком,в базе для первоначального обучения идет «штатный минимальный шаблон»  : https://github.com/zendframework/ZendSkeletonApplication, но мне он  тоже показался слишком усложненным. Потому в ходе «упрощения» создал свой:

https://github.com/donpadlo/zend3skeleton

, который при помощи composer позволяет установить фреймворк, и позволяет поддерживать актуальными дополнительные компоненты типа jquery, bootstrap4 и т.д.

Кроме того, из штатного «скелета» вырезан лишний код, который усложняет первоначальное понимание принципов работы Zend Framework

В шаблоне так-же рассмотрен вариант использования двух контроллеров, а не одного как в «базе» (в реальных проектах число контроллеров стремится к увеличению)

 

Использование Composer в проектах на PHP

Composer — это менеджер внешних библиотек для вашего проекта. Например, если вы используете jquery, jqueryui, какие-то другие библиотеки, то для того чтобы не тащить их при переносе проекта, не следить за их обновлением и актуальностью, достаточно использовать Composer. При новой инсталляции проекта достаточно будет выполнить

для генерации начального composer.json  (создание нового проекта) достаточно выполнить:

добавить нужные пакеты в папку vendor можно:

Обновить пакеты можно:

Ну и далее как использовать в своем коде PHP:

 
Или JS:
 

Ну и в догонку. Если у вас из проекта нет доступа к папке vendor, а нужно для использования например css и js непосредственно на странице, можно сделать симлинк, например что-то вроде:

 

Простая загрузка файла на сервер используя JQUERY

Задача: сохранить файл на сервер без обновления страницы. Т.е. при помощи ajax

Решение:

Клиентская часть:

Серверная часть:

Как узнать версии скриптов используемых на сайте.

А именно Jquery, Bootstrap, JqGrid и т.п. Ну например так:

 

JQuery tablesorter не правильно сортирует число

Казалось бы, что тут такого? В таблице строго число, разделенное точкой, а сортирует.. Какие-то колонки нормально, какие-то не пойми как. Проблема решается только если четко сказать плагину, какие колонки числа. Например так:

1 24 25 26 27 28 52