Мы настоятельно рекомендуем нашу структуру для личных блогов, новостей и разработки API REST.
Как и в любой другой структуре PHP, мы запустили этот проект на основе архитектуры MVC, с такими представленными услугами, как $Add->Loader , REST API , SharedLayouts , Middlewares и предварительно определенных концепций безопасности. Все в Simplist так же просто, как установить его на вашем сервере!
Загрузите его из этого хранилища:
composer create-project miladxandi/simplist
Помните, что ваша версия PHP должна быть верхней, чем 7, и должен быть установлен локальный адрес запроса:
public_html/
После этого вы должны установить имя пользователя и таблицу вашей базы данных! В локальном проекте для первого использования эти значения должны быть такими же:
Таблица: Simplist_simplist
Имя пользователя: корень
Пароль: пусто (без значения или пустой строки)
Вы можете изменить эти значения, перейдя на слой моделирования и изменить его в соединении.
Core/Configurations/Connection.phtml
Примечание. В папке «Ресурсы» есть файл таблицы SQL, который вы можете легко импортировать в свою локальную или онлайн -базу данных MySQL
Пока вы не будете работать над локальным рабочим каталогом, протокол HTTPS отключается, но если вы хотите загрузить его на свой сервер, протокол HTTPS можно включить, сделав «SecureProtocol» true в основной папке, в папке конфигураций вы можете найти файл маршрутизации или перейти к этому адресу:
Core/Configurations/Routing.phtml
Вы можете изменить $SecureProtocol = false; $SecureProtocol = true;
Он полностью установлен и готов к использованию.
Чтобы определить свои собственные маршруты, перейдите по этому адресу:
Маршрут/настройка/routes.phtml
Существует только возвратный массив, который возвращает URL в качестве клавиши массива и конфигурации в качестве его значений. Каждый новый маршрут должен точно создавать из этого шаблона:
'/aboutus' => [
'target'=>'Main.Home.Aboutus',
'get'=> true,
'post'=> false,
'middleware'=>'Main.Home.Aboutus'
'important'=>false
],
Позвольте мне описать это по линии:
'/aboutus'
Это веб -адрес, который будет обрабатывать запрошенный адрес с помощью контроллеров и Middlewares и является ключом массива. Примечание. Наша система маршрутизатора не чувствительна к корпусу, но вы определите маршруты строк.
'target'=>'Main.Home.Aboutus'
Это означает, что целевой контроллер является «HomeController» в папке «основной» папки контроллеров и после запроса этого адреса «Aboutus» будет вызоваться, как он написал в конце контроллера
'target'=>'Main.Home.Aboutus'. Также вы можете обработатьQuerry String, получив ее в параметрах функции. Вы также можете сделать некоторый запрос на базу данных в файлах контроллера. ДаннаяQuerry Stringили значения базы данных должна вставить в массив с именем$Viewbag. Вы можете отправить их на свою веб -страницу по этому коду:View::Process("Main.Home.Post",$Viewbag);Теперь он доступен из запрошенного файла «View» в «public_html/view/...». Вместо того, чтобы записывать ваши логические коды в контроллеры, мы рекомендуем вам поместить их в папку «логика» в папку модели. В этой папке есть несколько отличных контрактов, которые помогут вам лучше развивать ваш бизнес, чем когда -либо.
ПРИМЕЧАНИЕ. Контроллеры и средние войны должны создавать с помощью точности Controller.phtml или Middleware.phtml расширения, но должны быть записаны здесь без этих расширений. Например, у нас есть «HomeController», но мы можем получить к нему доступ, написав только его имя без слова «контроллер»: «Дом»
'get'=> true или 'post'=> false
Это общие методы запроса сервера, которые мы можем определить здесь. Если вы хотите отказать в каком -либо запросе, вам просто нужно изменить значение
postнаfalse. Затем вы можете увидеть каждый запрос с помощью метода запросаPOST, покажет вам ошибку «метод запроса не разрешен».
'middleware'=>'Main.Home.Aboutus'
Когда не было никакого конфликта с запрошенным URL и его определенным методом запроса, перед запуском контроллеров у нас есть некоторое промежуточное программное обеспечение, чтобы сделать некоторые проверки. Он может использовать для проверки файлов cookie или языка веб -сайтов и т. Д. Каждое промежуточное программное обеспечение должно вернуть
trueв своем ключе «статус», чтобы сдать экзамен. MiddleWares также может обрабатыватьQuerry String, получая ее в параметрах своей функции. Как и контроллеры, нам нужно их чистое имя без слова «промежуточное программное обеспечение».
'important'=>false
Как вы читали ранее, наша система не чувствительна к случаю по умолчанию по умолчанию, но иногда вам необходимо обрабатывать на чувствительный к случаю URL -адрес для проверки некоторых токенов и конфиденциальных данных или любой другой причины. Вы можете изменить это правило нашей системы маршрутизации, используя
'important'=>trueили выключить его на'important'=>false. Примечание. Этот ключ в массиве маршрутизации не требуется.
Чтобы определить свои собственные маршруты, перейдите по этому адресу:
Маршрут/настройка/api.phtml
Существует только возвратный массив, который возвращает URL в качестве клавиши массива и конфигурации в качестве его значений. Каждый новый маршрут должен точно создавать из этого шаблона:
'/api' => [
'target' => 'Api.Home.Index',
'allowed'=> 'get',
'blocked'=> 'DELETE',
'middleware'=>'Main.Home.Index',
'important'=>false
]
Позвольте мне описать это по линии:
'/api'
Это веб -адрес для вызова API, и он обработает запрошенную службу контроллерами и средним уровнем и является ключом массива. Примечание. Наша система маршрутизатора не чувствительна к корпусу, но вы определите маршруты строк.
'target' => 'Api.Home.Index'
Это означает, что целевой контроллер является «HomeController» в папке «API» в папке контроллеров и после запроса этого адреса «Метод индекса», как он написан в конце контроллера
'target' => 'Api.Home.Index'. Также вы можете обработатьQuerry String, получив ее в параметрах функции. Вы также можете сделать некоторый запрос на базу данных в файлах контроллера. Вместо того, чтобы записывать ваши логические коды в контроллеры, мы рекомендуем вам поместить их в папку «логика» в папку модели. В этой папке есть несколько отличных контрактов, которые помогут вам лучше развивать ваш бизнес, чем когда -либо.
ПРИМЕЧАНИЕ. Контроллеры и средние войны должны создавать с помощью точности Controller.phtml или Middleware.phtml расширения, но должны быть записаны здесь без этих расширений. Например, у нас есть «HomeController», но мы можем получить к нему доступ, написав только его имя без слова «контроллер»: «Дом»
'allowed'=> 'get' или 'blocked'=> 'DELETE'
Если вы хотите позволить своему приложению работать какой -либо глагол HTTP, вы можете определить его здесь и отделить их с запятой, чтобы ваш API использовал эти методы. Например, мы хотим, чтобы наше приложение взаимодействовало с нашим сервером с
POSTиGETметодами; Итак, мы определили их обоих здесь так же, как это:
'allowed'=> 'get,post'
Затем мы хотим ограничить некоторые глаголы HTTP от запроса на наш сервер, нам нужно написать их в
blockedчасти этого раздела:
'blocked'=> 'DELETE'
Мы можем написать столько, сколько глаголов, которые мы хотим в них, в разделах.
'middleware'=>'Main.Home.Aboutus'
Когда не было никакого конфликта с запрошенным URL и его определенным методом запроса, перед запуском контроллеров у нас есть некоторое промежуточное программное обеспечение, чтобы сделать некоторые проверки. Он может использовать для проверки файлов cookie или языка веб -сайтов и т. Д. Каждое промежуточное программное обеспечение должно вернуть
trueв своем ключе «статус», чтобы сдать экзамен. MiddleWares также может обрабатыватьQuerry String, получая ее в параметрах своей функции. Как и контроллеры, нам нужно их чистое имя без слова «промежуточное программное обеспечение».
'important'=>false
Как вы читали ранее, наша система не чувствительна к случаю по умолчанию по умолчанию, но иногда вам необходимо обрабатывать на чувствительный к случаю URL -адрес для проверки некоторых токенов и конфиденциальных данных или любой другой причины. Вы можете изменить это правило нашей системы маршрутизации, используя
'important'=>trueили выключить его на'important'=>false. Примечание. Этот ключ в массиве маршрутизации не требуется.
Библиотека oLoad является упрощенной службой и определяется, чтобы помочь вашей секции HTML head быть более чистой. Если вам нужно использовать эту библиотеку, сначала вы должны использовать этот код в файле вашего представления:
<?php $Add = new CoreRequirementoLoad("../../..","Style/Main","Script/Main","Content/Main"); ?>
В этом коде вы можете определить различные местоположения для вашего JS, CSS, изображений и т. Д., Поскольку мы позволим вам настроить ваше приложение, ../../.. покажет вам корень по умолчанию этого содержимого, но вы можете изменить его на каждой странице, которую вы его создаете.
Этот код может импортировать внешние библиотеки JS или CSS или изображения.
Кроме того, он может добавить уникальные типы файлов в ваш проект.
Это полный код, чтобы показать, как вы можете показать изображение на своем HTML:
<?php $Add->Loader("png","eastCloud","Shared",true,false,"eastCloud",24,24,"Style","Class"); ?>
Этот код означает:
<?php $Add->Loader(Extension: "png",Name: "eastCloud",UniqueUrl: "Shared",Local: true,UniqueType: false,ImageAlt: "eastCloud",ImageWidth: 24,ImageHeight: 24,ImageStyle: "Style",ImageClass: "Class"); ?>
И создаст полный тег <img> везде, где он использовался.
Вы можете добавить библиотеки JS и CSS вот так; Но кроме всего, что после Local аргумента в этом методе и их собственных расширениях, как это:
<?php $Add->Loader("css","Style",null,true); ?>
<?php $Add->Loader("js","Script",null,true); ?>
UniqueUrl аргумент позволяет вам определить внутренние или внешние библиотеки или изображения. Если нет необходимости определять UniqueUrl , просто оставьте пустую двойную цитату ( "" ) или пропустите NULL в качестве аргумента. Это нулевой по умолчанию.
Local аргумент означает, что библиотека или изображение - это локальный файл или нет, система будет использовать корень по умолчанию с данным аргументом, чтобы найти этот файл, если Local был true .
Аргумент UniqueType должен быть true если расширение было всем, кроме JS, CSS, PNG, JPEG, JPG и ICO. Это false по умолчанию.
Расширение js создаст Complete <script src="../../../Script/Main/main.js"></script> код везде, где вы его называете. Расширение css создаст полный <link rel="stylesheet" type="text/css" href="../../../Style/Shared/File.css"> код везде, где вы его называете.
Sharedlayouts - это название упрощенной услуги, которая находится в папке общей папки в виде ( public_html/View/Shared ).
Он содержит 2 папки и файл .phtml с именем «макетов» по умолчанию. Файл макетов может содержать один или несколько классов для каждой части проекта. Например, есть класс, как это:
class MainLayouts { public static function _Header() { include "Main/_HeaderLayout.phtml"; } public static function _Menu() { include "Main/_MenuLayout.phtml"; } public static function _Footer() { include "Main/_FooterLayout.phtml"; } }
Он включает в себя некоторые методы для загрузки некоторых других файлов просмотра в качестве заголовка, меню и нижнего колонтитула. Нет сложной концепции.
Мы поместили некоторые файлы отметки с расширениями ".md" в качестве подробных файлов руководства. Мы настоятельно рекомендуем вам загрузить и установить Mark Down Viewer для вашего Brower, чтобы просмотреть эти файлы с лучшим опытом.