Bây giờ bạn đã có kiến thức cơ bản về các ứng dụng, mô-đun và cách chúng được cấu trúc, chúng tôi sẽ chỉ cho bạn cách dễ dàng để bắt đầu
Cách dễ nhất để bắt đầu là cài đặt ứng dụng khung thông qua Composer
Nếu bạn chưa làm như vậy,
Khi bạn đã có, hãy sử dụng lệnh
2 để tạo một ứng dụng mới$ composer create-project -sdev zendframework/skeleton-application my-application
Tạo một mô-đun mới
Theo mặc định, một mô-đun được cung cấp cùng với
3, có tên là "Ứng dụng". Nó cung cấp bộ điều khiển để xử lý trang "trang chủ" của ứng dụng, mẫu bố cục và mẫu cho 404 và các trang lỗiThông thường, bạn sẽ không cần phải chạm vào điều này ngoài việc cung cấp một trang nhập thay thế cho trang web của bạn và/hoặc trang lỗi thay thế
Chức năng bổ sung sẽ được cung cấp bằng cách tạo các mô-đun mới
Để giúp bạn bắt đầu với các mô-đun, chúng tôi khuyên bạn nên sử dụng
4 làm cơ sở. Tải xuống từ đâyXả gói và đổi tên thư mục "ZendSkeletonModule" để phản ánh tên của mô-đun mới mà bạn muốn tạo;
Tại thời điểm này, đã đến lúc tạo một số chức năng
Hãy cập nhật lớp
6. Chúng tôi muốn đảm bảo rằng không gian tên là chính xác, cấu hình được bật và trả về, đồng thời chúng tôi thiết lập tự động tải khi khởi tạo. Vì chúng tôi đang tích cực làm việc với mô-đun này, nên danh sách lớp học sẽ thay đổi liên tục; . Hãy bắt đầu nàoĐầu tiên, hãy để
8 trả về một mảng trốngTệp _______09 đọc như sau$ composer create-project -sdev zendframework/skeleton-application my-application
0Điền vào ________ 100 bằng một phiên bản viết thường, phân tách bằng dấu gạch ngang của tên mô-đun của bạn; . g. , "ZendUser" sẽ trở thành "zend-user"
Tiếp theo, chỉnh sửa khai báo không gian tên của tệp
$ composer create-project -sdev zendframework/skeleton-application my-application
01. Thay thế dòng sau$ composer create-project -sdev zendframework/skeleton-application my-application
3với không gian tên bạn muốn sử dụng cho ứng dụng của mình
Tiếp theo, đổi tên thư mục
$ composer create-project -sdev zendframework/skeleton-application my-application
02 thành $ composer create-project -sdev zendframework/skeleton-application my-application
03 và thư mục $ composer create-project -sdev zendframework/skeleton-application my-application
04 thành $ composer create-project -sdev zendframework/skeleton-application my-application
03Tại thời điểm này, bây giờ bạn đã cấu hình đúng mô-đun của mình. Hãy tạo một bộ điều khiển
Tạo bộ điều khiển
Bộ điều khiển là đối tượng thực hiện
$ composer create-project -sdev zendframework/skeleton-application my-application
06. Điều này có nghĩa là họ cần triển khai một phương thức $ composer create-project -sdev zendframework/skeleton-application my-application
07 lấy tối thiểu một đối tượng $ composer create-project -sdev zendframework/skeleton-application my-application
08 làm đối sốTuy nhiên, trong thực tế, điều này có nghĩa là viết logic vào nhánh dựa trên định tuyến phù hợp trong mọi bộ điều khiển. Như vậy, chúng tôi đã tạo một số lớp bộ điều khiển cơ sở để bạn bắt đầu.
09 cho phép các tuyến khớp với một "hành động". Khi khớp, một phương thức được đặt tên theo hành động sẽ được gọi bởi bộ điều khiển. Ví dụ: nếu bạn có một tuyến đường trả về "foo" cho khóa "hành động", thì phương thức "fooAction" sẽ được gọi$ composer create-project -sdev zendframework/skeleton-application my-application
30 xem xét nội tâm của$ composer create-project -sdev zendframework/skeleton-application my-application
08 để xác định phương thức HTTP nào đã được sử dụng và gọi một phương thức theo đó$ composer create-project -sdev zendframework/skeleton-application my-application
32 sẽ gọi phương thức$ composer create-project -sdev zendframework/skeleton-application my-application
33 hoặc, nếu "id" được khớp trong quá trình định tuyến, phương thức$ composer create-project -sdev zendframework/skeleton-application my-application
34 [với giá trị định danh đó]$ composer create-project -sdev zendframework/skeleton-application my-application
35 sẽ gọi phương thức$ composer create-project -sdev zendframework/skeleton-application my-application
36, chuyển vào các giá trị của$ composer create-project -sdev zendframework/skeleton-application my-application
37$ composer create-project -sdev zendframework/skeleton-application my-application
38 mong đợi một "id" được khớp trong quá trình định tuyến và sẽ gọi phương thức$ composer create-project -sdev zendframework/skeleton-application my-application
39, chuyển vào mã định danh và bất kỳ dữ liệu nào được tìm thấy trong nội dung bài viết thô$ composer create-project -sdev zendframework/skeleton-application my-application
- 20 mong đợi một "id" được khớp trong quá trình định tuyến và sẽ gọi phương thức 21
- 22 mở rộng từ 23, nhưng cung cấp các phương thức để truy xuất phiên bản 24 và đảm bảo rằng việc thực thi không thành công trong môi trường không phải bảng điều khiển
Đối với phiên bản 3, phải cài đặt thành phần tích hợp zend-mvc-console. Nó có thể được thực hiện thông qua Composer.
25 Nếu bạn không sử dụng trình cài đặt thành phần, bạn sẽ cần
Để bắt đầu, chúng ta sẽ tạo một bộ điều khiển kiểu "hello world" với một hành động duy nhất. Đầu tiên, tạo tệp
26 trong thư mục 27. Chỉnh sửa nó trong trình soạn thảo văn bản hoặc IDE yêu thích của bạn và chèn các nội dung sauVì vậy, chúng ta đang làm gì ở đây?
- Chúng tôi đang tạo một bộ điều khiển hành động
- Chúng tôi đang xác định một hành động, "thế giới"
- Chúng tôi đang lấy một thông báo từ các tham số truy vấn [vâng, đây là một ý tưởng cực kỳ tồi tệ trong quá trình sản xuất. Luôn vệ sinh đầu vào của bạn. ]
- Chúng tôi đang trả lại một 28 với một mảng các giá trị sẽ được xử lý sau
Chúng tôi trả lại một
28. Lớp chế độ xem sẽ sử dụng điều này khi hiển thị chế độ xem, kéo các biến và tên mẫu từ nó. Theo mặc định, bạn có thể bỏ qua tên mẫu và nó sẽ phân giải thành "tên mô-đun chữ thường/tên bộ điều khiển chữ thường/tên hành động chữ thường". Tuy nhiên, bạn có thể ghi đè điều này để chỉ định một cái gì đó khác bằng cách gọi 30 trên phiên bản 28. Thông thường, các mẫu sẽ phân giải thành các tệp có phần mở rộng ". phtml" trong thư mục 32 của mô-đun của bạnVì vậy, với ý nghĩ đó, hãy tạo một tập lệnh xem
Tạo tập lệnh xem
Tạo thư mục
33. Trong thư mục đó, tạo một tệp có tên 34. Bên trong đó, dán vào sau3Đó là nó. Lưu các tập tin
đầu ra thoát
Phương pháp
35 là gì? . Không bao giờ tin tưởng đầu vào của người dùng;
Xem tập lệnh cho tên mô-đun với không gian tên con
Theo PSR-0, các mô-đun nên được đặt tên theo quy tắc.
36Kể từ phiên bản 3. 0, trình phân giải tên mẫu mặc định sử dụng tên lớp trình điều khiển đủ điều kiện, chỉ loại bỏ không gian tên con
37, nếu có. Ví dụ: 38 phân giải thành tên mẫu 39 thông qua cấu hình sau4[Trong bản phát hành v2, mặc định là loại bỏ các không gian tên con, nhưng các quy tắc ánh xạ tùy chọn cho phép đưa các không gian tên vào danh sách trắng trong cấu hình mô-đun để kích hoạt hành vi của trình phân giải hiện tại. Xem để biết thêm chi tiết. ]
Tạo một tuyến đường
Bây giờ chúng ta có bộ điều khiển và tập lệnh xem, chúng ta cần tạo một tuyến đường đến nó
Định tuyến mặc định
Tàu
4 có "tuyến đường mặc định" có khả năng đưa bạn đến hành động này. Lộ trình đó được xác định đại khái là 41, có nghĩa là đường dẫn 42 sẽ ánh xạ tới 43 [giả sử tên mô-đun là 44]Chúng tôi sẽ tạo một tuyến đường rõ ràng trong ví dụ này, vì việc tạo các tuyến đường rõ ràng là một phương pháp được khuyến nghị. Ứng dụng sẽ tìm phiên bản
45 để thiết lập định tuyến. Bộ định tuyến được tạo mặc định là một 46Để sử dụng chức năng "tuyến đường mặc định", bạn cần chỉnh sửa định nghĩa tuyến đường đã vận chuyển trong
47 của mô-đun và thay thế
- 48 với đường dẫn gốc dành riêng cho mô-đun
- 49 với 50
Ngoài ra, chúng ta cần thông báo cho ứng dụng rằng chúng ta có một bộ điều khiển
5dịch vụ điều khiển
Chúng tôi thông báo cho ứng dụng về các bộ điều khiển mà chúng tôi mong muốn có trong ứng dụng. Điều này là để ngăn ai đó yêu cầu bất kỳ dịch vụ nào mà
51 biết nhằm cố gắng phá vỡ ứng dụng. Bộ điều phối sử dụng một bộ chứa đặc biệt, có phạm vi sẽ chỉ kéo các bộ điều khiển được đăng ký cụ thể với nó, dưới dạng các lớp không thể xâm phạm hoặc thông qua các nhà máy
Mở tệp
47 của bạn và sửa đổi nó để thêm vào các tham số "tuyến đường" và "bộ điều khiển" để nó có nội dung như sau9Một vấn đề. chúng tôi chưa nói với ứng dụng của mình về mô-đun mới
Theo mặc định, các mô-đun không được sử dụng trừ khi chúng tôi báo cho người quản lý mô-đun về chúng. Như vậy, chúng ta cần thông báo cho ứng dụng về chúng
Bạn có nhớ tệp
53 không? . Sau khi hoàn thành, nó sẽ đọc như sau1Thay thế
54 bằng không gian tên của mô-đun của bạnKiểm tra nó ra
Bây giờ chúng ta có thể kiểm tra mọi thứ. Tạo một vhost mới trỏ gốc tài liệu của nó tới thư mục
55 của ứng dụng của bạn và kích hoạt nó trong trình duyệt. Bạn sẽ thấy mẫu trang chủ mặc định của ZendSkeletonApplicationBây giờ hãy thay đổi vị trí trong URL của bạn để nối thêm đường dẫn "/hello/world" và tải trang. Bây giờ bạn sẽ nhận được nội dung sau