Это мощная структура PHP с очень небольшим следствием, созданная для разработчиков, которым нужен простой и элегантный инструментарий для создания полнофункциональных веб-приложений. Пожалуйста, причитайте lilcasoft.info
Quick Crash Course для использования Framework: https://youtu.be/x6lnqhxg-3y
Как использовать ???
Разируйте папку LILCA_MVC_FRAMEWORD , и вы увидите, что есть 4 критических папки с именем моделей , представлений и контроллеров и маршрутов
В папке Controllers у нас есть HomeController , который по умолчанию, поэтому всякий раз, когда вы откроете приложение, оно направляет вас к HomeController.
В папке моделей у нас есть 2 файла класса, называемые mysqli_db.php и pdo_db.php , которые встроены в классы модели для PDO и MySQLI. В зависимости от цели вашего проекта вы проститесь на один из них, чтобы использовать свои собственные свойства и методы. (По умолчанию он будет использовать PDO_DB в Controllers/coreController.php, пожалуйста, внесите изменения в этом файле, если вы используете класс mysqli_db )
В папке представлений у нас есть общая папка , где содержится частичные представления, и она имеет статический макет, такой как заголовок, нижний колонтитул и навигация, проходящие по всей странице. Файл _header.php также включал для вас JQUERY и Boostrap Library.
Теперь просто посмотрите на файл в routes/default_route.php . Этот файл является важным компонентом для картирования вашего MVC вместе.
Реконфигурирование базового URL в файле индекса
Перейдите в файл index.php и определите базовый URL вашего проекта. Крайне имеет решающее значение для любой ссылки и изображений позже. Синтаксис для получения base_url: Routes :: getBaseUrl ();
Переконфигурация .htaccess file
Чтобы запустить проект по MVC Way, вы должны внести изменения в этом файле. В rewritebase просто повторно определите базу папки приложений. По умолчанию это будет /lilca_mvc_dev /
< IfModule mod_rewrite.c >
RewriteEngine On
RewriteBase /lilca_mvc_dev/
RewriteCond %{REQUEST_FILENAME} ! -d
RewriteCond %{REQUEST_FILENAME} ! -f
RewriteCond %{REQUEST_FILENAME} ! -l
RewriteRule ^(. * )$ index.php/ $1 [QSA,L]
< /IfModule >
< IfModule ! mod_rewrite.c >
# If we don't have mod_rewrite installed, all 404's
# can be sent to index.php, and everything works as normal.
ErrorDocument 404 /index.php
< /IfModule >1 - Создать новый контроллер
Создайте новый файл в папке контроллеров и назовите свой контроллер контроллером в качестве суффикса. Откройте свой контроллер и сделайте следующий начальный код:
class YourController extends CoreController { //Extend CoreController to use built in function
public static function index() {
return " This is index page " ;
}
}2 - Создайте новый вид
Создайте новый файл в папке Views (т.е.: test.php) и запустите здесь свой HTML и CSS -синтаксис.
3 - Создать новую модель
Создайте новый файл в папке моделей и выполните следующий открывающий код:
class YourModel extends DB {
public static function addRow(){
//Code your logic here
}
public static function updateRow(){
//Code your logic here
}
public static function deleteRow(){
//Code your logic here
}
public static function displayRow(){
//Code your logic here
return " This is display row function " ;
}
}4 - Передача данных от контроллера для просмотра
В вашем файле контроллера добавьте функцию Paratemeter to index (), чтобы он мог вернуть значение для просмотра. Просто имейте в виду, что это будет повторять значение, не поставив ее в реальное созданное представление.
class YourController extends CoreController {
public static function index($val) {
return " You enter: " . $val ;
}
}5 - Создать новую страницу
Перейдите в папку маршрутов и откройте файл default_route.php или создайте новый и добавьте следующий код:
Routes::addPage( " your_page_name " , function () { //put in your desire page name in first parameter
echo YourController::index( " Hello world " ) ;
});6 - Прикрепите частичные представления к новой странице
Маршрут обрабатывает все файлы в порядке стека, что означает, что все, что вы положили в первую очередь, сначала будет выполнено. Посмотрите на этот пример:
Routes::addPage( " your_page_name " , function () {
HomeController::addView( " Shared/_header " ) ;
HomeController::addView( " Shared/_navigation " ) ;
HomeController::addView( " content " ) ;
HomeController::addView( " Shared/_footer " ) ;
});Страница будет запускать файл заголовка, навигация, контент, нижний колонтитул в порядке соответственно. Если вы не хотите прикреплять навигацию к дому, просто удалите ее с маршрута.
7 - Передача данных с маршрута для просмотра в Route.php
Routes::addPage( " test_page " , function () {
$fooArr = [1,2,3,4,5] ;
HomeController::addView( " Shared/_header " ) ;
HomeController::addView( " Shared/_navigation " ) ;
HomeController::addView( " content " , $fooArr ) ;
HomeController::addView( " Shared/_footer " ) ;
});8 - Получите результат от модели к контроллеру и пройти для просмотра
Добавление функции с названием ShowData () в файл вашегоконтроллера и файл модели загрузить, который вы хотите использовать, используя Self :: LoadModel ("yourModel")
class YourController extends CoreController {
public static function index($val) {
return " You enter: " . $val ;
}
public static showData () {
self::loadModel( " YourModel " ) ; //you need to load your model class name before you can use function in that particular model.
$data = YourModel::displayRow (); // assign result from model to variable called $data
return $data ;
}
}Откройте файл route.php в папке маршрутов и делайте так:
Routes::addPage( " test " , function () {
$result = YourController::showData ();
HomeController::addView( " Shared/_header " ) ;
HomeController::addView( " Shared/_navigation " ) ;
HomeController::addView( " content " , $result ) ; //pass data to view content.php
HomeController::addView( " Shared/_footer " ) ;
});Откройте файл content.php в папке представлений и сделайте следующий код, чтобы получить значение.
$get_data = YourController:: $viewBag ;
echo $get_data ; //output the result to screenYourController :: $ viewbag - это публичная собственность принадлежит вашемуконтроллеру, который содержит данные, которые вы передаете непосредственно от маршрута к представлению. Передача данных может быть чем угодно (массив, целое число, строка ...)
9 - Получите данные из формированного URL
Чтобы получить данные из URL -адреса, как: продукт/категория/элемент, вы будете использовать routs :: url_segment (index_of_segment_in_url) для получения этого значения в форматированном URL.
По сути, URL будет исключать имя папки проекта и учитывать только от имени страницы до конца. Например, продукт будет именем страницы, а сегмент индекса - 1, категория будет иметь индексный сегмент 2, а элемент будет иметь индексный сегмент 3 и так далее. В противном случае вы можете использовать строку запроса вместо использования формированного URL.
10 - Как использовать библиотеку проверки для проверки поля формы
Включите библиотеку проверки в ваш файл, используя:
require_once " validation.php " ;Чтобы проверить формат ввода, используя эту функцию:
Validation::testFormat( $test_value , $name_of_format ) ;Эта функция вернет true, если совпадает, в противном случае неверно
Список формата тестирования: дата, электронная почта, почтовый индекс, имя, телефон, валюта, URL, имя пользователя, пароль
Итак, теперь вы знаете, как превратить свой проект в MVC. Подводя итог, существует 4 основных этапа создания структуры MVC для вашего приложения.
1. Create a model in Models folder
2. Create a controller in Controllers folder
3. Create a view for controller in Views folder
4. Create a route to connect your MVC in Routes folderВаше здоровье!!!
Lilca Dinh