Làm cách nào để sử dụng MVC trong lõi PHP?

Chúng tôi sẽ tạo một hệ thống quản lý nội dung php đơn giản dựa trên mẫu thiết kế MVC. Ứng dụng này sẽ có cấu trúc cơ bản và mô-đun trang. Mô-đun trang sẽ lưu dữ liệu vào cơ sở dữ liệu MySQL và hiển thị dữ liệu trong chế độ xem

MVC là viết tắt của Model, View và Controller. Bạn có thể biết thêm thông tin về giới thiệu MVC từ Model, View và Controller trong MVC

Kiểm tra các Hướng dẫn khác,

  • 6 khung API RESTful hàng đầu cho PHP
  • Mô hình, Chế độ xem và Trình điều khiển trong MVC
  • Laravel 8 Bố cục và Chế độ xem bằng AdminLTE3

Cấu trúc tệp của ứng dụng MVC bên dưới

Nơi các thư mục cho

  • cấu hình. Thư mục này chứa tất cả các tệp cấp độ cấu hình ứng dụng [db.php]
  • bộ điều khiển. Thư mục này sẽ chứa các tệp điều khiển nơi hành động sẽ xác định cho giao diện người dùng
  • css. Tất cả các tệp CSS cấp ứng dụng
  • hình ảnh. Chứa tất cả hình ảnh ứng dụng
  • bao gồm. Thư mục này sẽ chứa tất cả lib của bên thứ ba
  • js. Thư mục này sẽ chứa các tệp JavaScript của ứng dụng
  • xem. Thư mục chứa tất cả các tệp dạng xem/giao diện người dùng
  • mục lục. php. Tệp gốc chính, nơi ứng dụng sẽ bắt đầu hiển thị

Có các tệp sau sẽ tạo cho ví dụ này

  • mục lục. php. Tệp gốc chính, nơi ứng dụng sẽ bắt đầu hiển thị
  • bộ điều khiển/BaseController. php. Đây là bộ điều khiển cơ sở chính và sẽ được mở rộng bởi tất cả các bộ điều khiển con
  • bộ điều khiển/PageController. php. Tệp điều khiển này sẽ chứa tất cả các phương thức hành động cho mô-đun trang
  • người mẫu/Người mẫu. php. Đây là lớp mô hình chính và chứa tất cả các phương thức phổ biến cho các mô hình
  • người mẫu/Trang. php. Đây là một lớp mô hình trang và chứa các phương thức mô-đun trang
  • xem/trang/chỉ mục. php. Đây là tệp chi tiết trang tệp HTML
  • xem/tiêu đề. php. Đây là tệp HTML một phần cho tiêu đề bố cục và chứa thông tin tiêu đề chủ đề

Bước 1. Đầu tiên chúng ta sẽ tạo tệp

abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}
0. Tệp chỉ mục sẽ nhận trình xử lý
abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}
1 từ URL

  • Page Details

trong đoạn mã trên, Chúng tôi đã tạo một liên kết Trang Chi tiết. Một lần, chúng tôi sẽ nhấp vào liên kết Người dùng, nó sẽ gọi phương thức

abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}
2 vào tệp bộ điều khiển
abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}
3

Cấu trúc tệp của bộ điều khiển ứng dụng

Hệ thống quản lý nội dung php này sẽ có thư mục bộ điều khiển. Nó chứa tất cả các tệp bộ điều khiển ứng dụng

Bước 2. Hãy tạo một tệp điều khiển cơ sở

abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}
4. Tệp này chứa tất cả các phương thức sẽ sử dụng trong tất cả các tệp bộ điều khiển. Tệp này giữ tất cả các phương thức điều khiển phổ biến cho ứng dụng php của bạn

abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}

Bước 3. Tạo bộ điều khiển mô-đun của chúng tôi

abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}
5 và mở rộng bộ điều khiển cơ sở

________số 8_______

Chúng tôi đã xác định phương thức chuyển đổi sẽ hiển thị phương thức dựa trên tham số hành động đã truyền. Phương thức

abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}
6 sẽ hiển thị tệp xem
abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}
7

Cấu trúc tệp mô hình ứng dụng

Hệ thống quản lý nội dung php có lớp mô hình. Nó sẽ có tất cả các lớp mô hình và sử dụng cho các hoạt động liên quan đến db

Bước 4. Tạo một lớp base_model. Lớp này chứa tất cả các phương thức phổ biến trong tất cả các lớp mô hình mô-đun

abstract Class Model {
	protected function insertData[$table] {
        }
        protected function saveData[$table] {
        }
}

Chúng ta sẽ mở rộng lớp mô hình cơ sở ở trên và triển khai phương thức

abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}
8,
abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}
9 vào lớp mô hình
$obj = new Controller[];

switch[$_REQUEST['action']] {
	case 'pageInfo' :
		$obj->getPageInfo[];
	break;
	}
Class PageController Extends BaseController {

	public function getPageInfo[]
	{
		$this->render['page/index'];
	}
}
0 mở rộng

Bước 5. Hãy tạo tệp mô hình mô-đun của chúng tôi sẽ mở rộng trên lớp mô hình cơ sở

Class Page Extends Model {

	public function saveData[]
	{
		try {
			//write your logic
			}
		} catch [Exception $e] {
			return $e->getMessage[];
		}
	}
	protected function insertData[] {
		try {
			//write your logic
			}
		} catch [Exception $e] {
			return $e->getMessage[];
		}
	}
}

Như bạn có thể thấy đoạn mã trên, tôi đã triển khai phương pháp

abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}
8 và
abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}
9

Gọi phương thức mô hình vào tệp điều khiển

Chúng tôi đã xác định các phương thức xử lý bộ điều khiển và các phương thức mô hình, hãy tích hợp và gọi vào phương thức xử lý bộ điều khiển

Liên kết được Tài trợ

Bước 6. Hãy gọi phương thức mô hình trong tệp điều khiển

abstract Class BaseController {
	public function render[$file] {
	include '../' . $file .'.php';
   }
}
4

public function saveData[]
{
   $result = $this->model->saveData[];
}

Bước 7. Đã tạo một tệp

$obj = new Controller[];

switch[$_REQUEST['action']] {
	case 'pageInfo' :
		$obj->getPageInfo[];
	break;
	}
Class PageController Extends BaseController {

	public function getPageInfo[]
	{
		$this->render['page/index'];
	}
}
4 mới chứa cấu hình cơ sở dữ liệu

dbhost, $this->username, $this->password, $this->dbname] or die["Connection failed: " . mysqli_connect_error[]];

		/* check connection */
		if [mysqli_connect_errno[]] {
			printf["Connect failed: %s\n", mysqli_connect_error[]];
			exit[];
		} else {
			$this->conn = $con;
		}
		return $this->conn;
	}
}
?>

Bước 8. Đã tạo một tệp

$obj = new Controller[];

switch[$_REQUEST['action']] {
	case 'pageInfo' :
		$obj->getPageInfo[];
	break;
	}
Class PageController Extends BaseController {

	public function getPageInfo[]
	{
		$this->render['page/index'];
	}
}
5 mới chứa biến mức cấu hình

Bước 9. Đã tạo một tệp

$obj = new Controller[];

switch[$_REQUEST['action']] {
	case 'pageInfo' :
		$obj->getPageInfo[];
	break;
	}
Class PageController Extends BaseController {

	public function getPageInfo[]
	{
		$this->render['page/index'];
	}
}
6 mới. Tập tin này chứa tất cả
các phương thức trợ giúp có sẵn trong tất cả các mô-đun

Liên kết được Tài trợ

Bước 10. Cuối cùng, chúng ta sẽ tạo một view/header cho file view. php trong thư mục xem. Tệp này chứa chức năng liên quan đến HTML và js

 

Bước 9. Cuối cùng chúng ta sẽ tạo một view file view/page/index. php trong thư mục xem. Tệp này chứa chức năng liên quan đến HTML và js

Hello! Page Details page

Phần kết luận

Chúng tôi đã xác định hệ thống quản lý nội dung PHP cấp cao bằng cách sử dụng mẫu thiết kế MVC. Tôi không định nghĩa những thứ ở cấp độ cơ bản, tôi đã mô tả tổng quan cấp cao cho PHP cms

Các chuyên gia php lành nghề luôn có cơ hội tìm được dự án tốt nhất cho mình và làm việc từ xa. Nếu bạn là chuyên gia cấp trung trở lên, bạn có thể dễ dàng tìm thấy chính mình trong các công ty khởi nghiệp. Chủ sở hữu cấp tuyển dụng các lập trình viên php trực tiếp và cả với dịch vụ của các công ty 'người kết hợp hoàn hảo'. Một trong những nền tảng đáng tin cậy đã thể hiện trong lĩnh vực này – Lemon. io

Các bạn sinh viên đang tìm kiếm sự trợ giúp đáng tin cậy với các bài tập và giải pháp PHP của mình phải không?

Làm cách nào để sử dụng MVC trong PHP?

Xem. GUI của người dùng cuối thông qua đó người dùng có thể tương tác với hệ thống, tôi. e. ,HTML,CSS. .
MVC là viết tắt của "Chế độ xem mô hình và bộ điều khiển"
Mục đích chính của Kiến trúc MVC là tách dữ liệu Ứng dụng & logic nghiệp vụ khỏi giao diện NGƯỜI DÙNG
Các loại Kiến trúc khác nhau có sẵn

MVC trong PHP w3schools là gì?

MVC được viết tắt là Model View Controller là một mẫu thiết kế được tạo để phát triển ứng dụng cụ thể là ứng dụng web.

Cấu trúc PHP MVC đơn giản là gì?

Khung PHP MVC là gì? . MVC là viết tắt của Model, View và Controller. Bộ điều khiển làm trung gian giữa các mô hình và chế độ xem. an application design pattern that separates the application data and business logic [model] from the presentation [view]. MVC stands for Model, View & Controller. The controller mediates between the models and views.

MVC nghĩa là gì PHP?

MVC [ Model-View-Controller ] là một mẫu trong thiết kế phần mềm thường được sử dụng để triển khai giao diện người dùng, dữ liệu và logic điều khiển. Nó nhấn mạnh sự tách biệt giữa logic nghiệp vụ của phần mềm và hiển thị.

Chủ Đề