nghệ nhân PHP. Artisan là giao diện người dùng dòng lệnh có thể hỗ trợ bạn trong khi xây dựng ứng dụng của mình. Lệnh nghệ nhân PHP thực hiện nhiều tác vụ trong thời gian ngắn hơn và hiệu quả hơn. Nó có thể được sử dụng để tạo mô hình, tạo bộ đệm, tạo bộ điều khiển và cũng có thể được sử dụng để tạo các gói Laravel và thêm dữ liệu giả. Phục vụ nghệ nhân PHP. Lệnh này có thể được sử dụng để chạy ứng dụng của bạn. Nó cũng được sử dụng cho mục đích phát triển và thử nghiệm
- Theo mặc định, nó lấy tên máy chủ làm máy chủ cục bộ
php artisan serve
- Nếu bạn muốn thay đổi tên máy cũng như số cổng, bạn có thể sử dụng lệnh sau
php artisan serve --host=hostname.app --port=8080
Cách sử dụng lệnh PHP artisan. Điều quan trọng bạn cần biết khi sử dụng Laravel là không thể chạy dự án của bạn thông qua localhost, nó chỉ có thể chạy thông qua chính lệnh phục vụ nghệ nhân php
- Tạo mô hình. Lệnh này sẽ tạo tên người dùng mô hình. php vào thư mục Mô hình có sẵn hoặc nếu thư mục không tồn tại, nó sẽ tạo một thư mục. Bạn có thể tìm thấy mô hình trong ứng dụng vị trí này/Mô hình/tên mô hình. php
php artisan make:model
- Xóa bộ nhớ cache. Khi nhiều người dùng đăng ký trang web của bạn, điều đó có thể khiến hệ thống xác thực bị lỗi, bộ đệm trong laravel có thể bị xóa bằng cách sử dụng các lệnh này. Bạn cũng có thể xóa tất cả các tệp bộ đệm và tệp phiên khỏi bộ nhớ theo cách thủ công
- Để xóa bộ nhớ cache của ứng dụng
php artisan cache:clear
- Để xóa tệp bộ đệm cấu hình
php artisan config:clear
- Để xóa tất cả các tệp xem đã biên dịch
php artisan view:clear
- Tạo bộ điều khiển. Lệnh sau được sử dụng để tạo bộ điều khiển. Tạo TestController bên trong thư mục Controller
php artisan make:controller TestController
PHP artisan dump-autoload. Lệnh php artisan dump-autoload gọi Trình soạn thảo với cờ tối ưu hóa. Nó sẽ biên dịch lại vô số tệp tạo bootstrap/biên dịch khổng lồ. php Trình soạn thảo PHP Trình soạn thảo là trình quản lý gói cấp ứng dụng cho ngôn ngữ lập trình PHP. Trình soạn thảo là một công cụ để quản lý các phụ thuộc trong PHP. Có một số lệnh mà bạn cần biết trước khi sử dụng công cụ soạn nhạc
- nhà soạn nhạc. json. Để bắt đầu sử dụng trình soạn nhạc, tất cả những gì bạn cần là một trình soạn nhạc. tập tin json. Tệp này bao gồm tất cả các phụ thuộc của dự án đã tạo của bạn và cả siêu dữ liệu. nhà soạn nhạc. json
php
"autoload":{
php artisan serve --host=hostname.app --port=80800
php artisan serve --host=hostname.app --port=80802
php artisan serve --host=hostname.app --port=80803
- cài đặt nhà soạn nhạc. Lệnh cài đặt của nhà soạn nhạc có thể được sử dụng để thêm vào các phụ thuộc. Lệnh này sẽ không cập nhật bất cứ điều gì. Bạn cần thêm thủ công vào trình soạn nhạc. json trong khi nếu nhà soạn nhạc. lock đã tồn tại cài đặt chính xác những gì được chỉ định trên tệp này nếu không hãy đọc trình soạn thảo. json để làm cho nó dễ dàng hơn
- Cập nhật nhà soạn nhạc. Lệnh cập nhật của nhà soạn nhạc có thể được sử dụng để cài đặt cũng như cập nhật các phụ thuộc. Lệnh này có thể được sử dụng để thêm hoặc xóa các phụ thuộc nhưng trước tiên, hãy thêm thủ công vào trình soạn thảo. tập tin json
- nhà soạn nhạc loại bỏ. Lệnh này có thể được sử dụng để loại bỏ các phụ thuộc không sử dụng. Bạn có thể gỡ cài đặt các phụ thuộc như vậy bằng lệnh bên dưới
composer remove packageauthor/packagename
- Composer kết xuất-tự động tải. Trình soạn thảo dump-autoload sẽ không tải xuống bất kỳ thứ gì mới, tất cả những gì nó làm là tìm kiếm tất cả các lớp và tệp mà nó cần đưa vào lại
Sự khác biệt giữa “PHP artisan dump-autoload” và “PHP composer dump-autoload”. Bây giờ chúng ta hãy xem qua để hiểu sự khác biệt giữa các lệnh dump-autoload của nhà soạn nhạc và PHP artisan dump-autoload
Composer là công cụ quản lý phụ thuộc của PHP. Trình soạn thảo cho phép bạn chỉ định các thư viện cần thiết cho một dự án và sẽ tự động bao gồm các thư viện đó cùng với các phụ thuộc của chúng. Composer cũng cho phép bạn tạo các gói của riêng mình và chia sẻ chúng qua trang web Packagist. Ngay cả khi làm việc trên các dự án mà bạn không sử dụng các phụ thuộc bên ngoài, việc sử dụng trình tải tự động Trình soạn thảo có thể mang lại lợi ích không chỉ vì sự thuận tiện mà còn giúp dự án của bạn được chuẩn hóa
Cài đặt
Trình soạn thảo được tải xuống dưới dạng tệp PHAR thực thi. Tải về
curl -sS //getcomposer.org/installer | php
Tôi muốn di chuyển tệp đến PATH của người dùng theo cách mà tôi có thể truy cập từ mọi nơi
mv composer.phar /usr/bin/composer composer --version
Tất cả các phụ thuộc của dự án của bạn được xác định trong một trình soạn thảo. tập tin json. Ở mức tối thiểu, bạn chỉ có thể xác định một tệp trống
{ }
Để cài đặt phụ thuộc của bạn chạy
composer install
Ngay cả khi không có bất kỳ phần phụ thuộc nào được xác định trong tệp JSON, một thư mục nhà cung cấp vẫn được tạo, đây là nơi lưu trữ tất cả các phần phụ thuộc dự án của bạn, cũng như chức năng trình tải tự động của Trình soạn thảo
Tự động tải tệp dự án
Tính năng tự động tải của trình soạn nhạc cung cấp nhiều tính năng khác nhau, mặc dù bạn nên sử dụng tính năng tự động tải của PSR 4, đây là cách triển khai mặc định
Để sử dụng tính năng tự động tải PSR 4, bạn chỉ cần tuân theo một quy ước không gian tên cụ thể. Nói chung, bạn sẽ tạo một thư mục src/ trong thư mục gốc của mình, nằm cùng cấp độ với nhà cung cấp/ và thêm các dự án của bạn vào đó. Ví dụ: nếu bạn có dự án Phương tiện, bạn sẽ tạo cấu trúc thư mục src/Vehicle và đặt các lớp của bạn vào đó. src/Xe/Ô tô. php, v.v. Trong tệp PHP của bạn, bạn sẽ sử dụng. không gian tên Phương tiện;. Khi bạn tạo cấu trúc thư mục sâu hơn, bạn chỉ cần sao chép không gian tên thành cấu trúc thư mục. Các tệp sau sẽ có các không gian tên này
src/Vehicle/Road/Car.php namespace Vehicle\Road; src/Vehicle/Air/Wings/Airplane.php namespace Vehicle\Air\Wings; src/Book/History/UnitedStates.php namespace Book\History;
Để tự động tải Trình soạn thảo có thể tìm thấy các lớp của bạn, bạn cần xác định thư mục src cho các dự án của mình. Bạn có thể làm điều này bằng cách cập nhật trình soạn nhạc. json và chạy bản cập nhật
{ "autoload": { "psr-4": { "Vehicle\\": "src/Vehicle/", "Book\\": "src/Book/" } } }
composer update
Bây giờ khi bạn cần sử dụng dự án của mình, chỉ cần bao gồm tự động tải. php và nhập các không gian tên bạn muốn sử dụng
require_once __DIR__ . '/vendor/autoload.php'; use \Vehicle\Road; new Road\Car[];
Bạn có thể thấy đăng ký không gian tên trong nhà cung cấp/nhà soạn nhạc/autoload_psr4. php. Đây là nơi không gian tên thực sự được liên kết với cấu trúc thư mục. Lưu ý rằng tên thư mục của bạn phân biệt chữ hoa chữ thường và thường thư mục đầu tiên bên dưới src/ sẽ là chữ thường và các thư mục sau viết hoa lạc đà. src/dự án/Xe/Đường. Ngoài ra, tùy thuộc vào dự án của bạn, bạn có thể không muốn có một mục nhập trình tải tự động khác cho mỗi thư mục dự án
Đây chỉ là một ví dụ về cách thiết lập dự án thông thường và bạn nên lưu ý rằng có các tiêu chuẩn tải tự động khác nhau, cũng như rất nhiều vấn đề về cách bạn thiết lập dự án của mình
Tự động tải tập tin nhà cung cấp
Quá trình tự động tải cho các tệp của nhà cung cấp hoạt động khá giống với quá trình tự động tải cho các tệp dự án của riêng bạn. Nếu bạn có một dự án với các phần phụ thuộc, trước tiên hãy thêm chúng vào trình soạn thảo. json, sau đó chạy cài đặt [hoặc cập nhật]
{ "require": { "guzzlehttp/guzzle": "4.*", "monolog/monolog": "1.*" }, "autoload": { "psr-4": { "Project\\": "src/Project/" } } }
Bây giờ nhìn vào autoload_psr4. php, bạn có thể thấy các không gian tên mới và các thư mục mà chúng được ánh xạ tới. Vì vậy, để sử dụng Guzzle Client, chỉ cần
require_once __DIR__ . '/vendor/autoload.php $Client = new GuzzleHttp\Client[];
Mà chúng ta thấy được ánh xạ tới. nhà cung cấp/guzzlehttp/guzzle/src
Tôi sẽ đi vào chi tiết hơn khi thảo luận về việc tạo các gói của riêng bạn, nhưng tại thời điểm này, bạn sẽ cảm thấy đủ tự tin để sử dụng không gian tên của nhà cung cấp cùng với tính năng tự động tải của Trình soạn thảo
Hiệu suất
Một điều đáng chú ý là đối với các dự án lớn, chi phí sử dụng trình tải tự động Trình soạn thảo có thể trở nên đáng chú ý. Điều này một phần là do chi phí phát sinh với rất nhiều lệnh gọi file_exists[]. Một cách để giải quyết vấn đề này là chuyển đổi trình tải tự động sang sử dụng bản đồ lớp bằng lệnh
mv composer.phar /usr/bin/composer composer --version0
Điều này sẽ tạo bản đồ của tất cả các không gian tên tới các tệp tương ứng của chúng. Nhược điểm của phương pháp này là mỗi khi các lớp mới được giới thiệu, bản đồ lớp sẽ cần phải được tạo lại, cũng như bất kỳ lúc nào các lệnh cài đặt/cập nhật của trình soạn thảo được chạy. Một cân nhắc khác, nếu bạn đang sử dụng opcache của Zend, là sử dụng chỉ thị opcache. enable_file_override cũng có thể giúp giảm thiểu một số chi phí
Phần kết luận
Composer là một công cụ cực kỳ hữu ích trong việc quản lý phụ thuộc, cũng như cung cấp chức năng tự động tải chuẩn hóa. Trình soạn thảo cung cấp nhiều chức năng hơn và nhanh chóng trở thành một tiêu chuẩn công nghiệp để quản lý phụ thuộc PHP