Ra mắt hai series mới cực hot Trí tuệ nhân tạo A đến ZPython công cụ không thể thiếu khi nghiên cứu Data science, Machine learning.

Todo List: Cài đặt môi trường Laravel

Video trong bài viết

Đây là bài đầu tiên trong Khóa học Laravel cơ bản qua ứng dụng Todo list, trước khi bắt đầu bài học, tôi muốn giới thiệu sơ lược với các bạn về ứng dụng Todo List. Laravel là framework PHP có thể nói là tốt nhất hiện nay, nó giúp chúng ta tạo ra các ứng dụng một cách nhanh chóng, hoạt động ổn định và tốc độ cực nhanh, đây cũng chính là lý do chúng ta cùng tìm hiểu về nó. Nếu bạn còn đang băn khoăn, không biết nên sử dụng framework nào cho cả hệ thống website của cá nhân hoặc công ty thì Laravel là lựa chọn số 1, tin tôi đi, bạn sẽ không mất nhiều công sức nữa, cái mà tôi muốn chia sẻ với mọi người là những kinh nghiệm, công sức mà tôi bỏ ra trong nhiều năm.

Giới thiệu

Todo List là ứng dụng quản lý các công việc, nhiệm vụ. Trong khóa học này chúng ta sẽ xây dựng Todo List nhưng ở một dạng cơ bản nhất để bạn có thể nắm bắt được các kiến thức về Laravel. Sau khóa học, nếu bạn có ham thích thì hoàn toàn có thể mở rộng nó ra thành một ứng dụng hữu ích.

Thường khi bắt đầu học một ngôn ngữ lập trình, chúng ta rất muốn nhanh chóng thực hiện một ứng dụng "Hello World" để xem hình hài nó thế nào? Với Laravel, nếu bỏ qua những thứ phức tạp hoạt động bên trong, thì với một người học lập trình cơ bản, bạn có thể làm quen và bắt đầu code vài ứng dụng chỉ sau một tuần.

Chúng ta đã khá dài dòng rồi, bắt đầu vào công việc cài đặt môi trường phát triển và thực hiện một ứng dụng Hello World thôi.

Yêu cầu tối thiểu khi cài đặt Laravel

Khóa học Laravel cơ bản qua ứng dụng Todo list gốc được thiết kế trên framework Laravel 5.7 có khác biệt chút so với phiên bản Laravel hiện tại là 5.8, tuy nhiên bạn hoàn toàn có thể thực hiện trên Laravel 5.8. Về cơ bản các phiên bản Laravel mới sẽ có thêm các chức năng chứ ít khi tạo ra các xung đột so với các tính năng cũ.

Yêu cầu tối thiểu cho cài đặt môi trường Laravel:

  • PHP >= 7.1.3
  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Mbstring PHP Extension
  • Tokenizer PHP Extension
  • XML PHP Extension
  • Ctype PHP Extension
  • JSON PHP Extension
  • BCMath PHP Extension

Các mở rộng cần thiết chúng ta sẽ không quan tâm nhiều nhưng có 3 yêu cầu tối thiểu tôi sẽ đi vào chi tiết hơn chút:

  • Yêu cầu PHP phiên bản 7.1.* do trong phiên bản này hiệu năng đã được cải thiện đáng kể so với các phiên bản trước đây. Hiệu năng gấp khoảng 1.8 lần so với PHP 5.6 phiên bản PHP hay sử dụng nhất trước khi có PHP 7.1 (vì PHP phiên bản 6 là một phiên bản lỗi đáng thất vọng).
  • OpenSSL PHP Extension: các yêu cầu chuyển đổi từ giao thức HTTP sang HTTPS bảo mật hơn là bắt buộc, nó giúp lưu chuyển dữ liệu an toàn hơn và là một điểm cộng cho việc tối ưu thứ hạng trên các bộ máy tìm kiếm (SEO).
  • JSON PHP Extension: JSON là một định dạng dữ liệu đơn giản và cực hiệu quả, nó đã và đang dần thay thế XML một định dạng dữ liệu bá vương trong quá khứ. JSON hiện có mặt ở khắp nơi, đặc biệt trong các kiến trúc ứng dụng kiểu API hiện nay.

Cài đặt Laravel

Một công cụ mà chúng ta phải làm quen khi phát triển sử dụng PHP đó là Composer, công cụ quản lý sự ràng buộc các gói phần mềm trong một dự án PHP.

Nếu bạn sử dụng Laragon thì không cần cài đặt Composer vì đã được tích hợp sẵn, còn không bạn có thể cài đặt cũng rất nhanh chóng thông qua thực thi các câu lệnh sau trong môi trường dòng lệnh.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '48e3236262b34d30969dca3c37281b3b4bbe3221bda826ac6a9a62d6444cdb0dcd0615698a5cbe587c3f0fe57a54d8f5') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

Hoặc có thể cài đặt từ bộ cài Composer trên windows giống như cài đặt các ứng dụng thông thường.

Bản thân Laravel cũng là một package do đó việc cài đặt Laravel cũng thông qua Composer với câu lệnh:

composer create-project --prefer-dist laravel/laravel todo-app "5.8.*"

Diễn giải các thành phần của câu lệnh

  • composer: yêu cầu ứng dụng composer thực hiện
  • create-project: tùy chọn của câu lệnh composer nhằm tạo dự án mới
  • --prefer-dist: thực hiện cài đặt từ dist trên respository
  • laravel/laravel: cấu trúc vendor/package tham chiếu đến gói phần mềm tên laravel của vendor laravel.
  • todo-app: tên dự án, ở đây bạn có thể nhập vào tên dự án của bạn, ví dụ ở Khóa học này chúng ta sử dụng là todo-app, nó sẽ tạo ra một thư mục todo-app để chứa toàn bộ mã nguồn và các tài nguyên khác của dự án.
  • "5.8.*" tùy chọn xác định phiên bản package chúng ta cài đặt, nếu không đưa vào thì sẽ lấy phiên bản mới nhất của gói.

Thực hiện câu lệnh trên trong màn hình dòng lệnh

C:\laragon\www                                                           
λ composer create-project laravel/laravel todo-app --prefer-dist         
Installing laravel/laravel (v5.8.17)                                     
  - Installing laravel/laravel (v5.8.17): Downloading (100%)             
Created project in todo-app                                              
> @php -r "file_exists('.env') || copy('.env.example', '.env');"         
Loading composer repositories with package information                   
Updating dependencies (including require-dev)                            
Package operations: 80 installs, 0 updates, 0 removals                   
  - Installing symfony/polyfill-ctype (v1.11.0): Loading from cache      
  - Installing phpoption/phpoption (1.5.0): Downloading (100%)      
...
Writing lock file
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: beyondcode/laravel-dump-server
Discovered Package: fideloper/proxy
Discovered Package: laravel/tinker
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
> @php artisan key:generate --ansi
Application key set successfully.

Như vậy, chúng ta đã cài đặt xong Laravel, tiếp theo chúng ta sẽ thực hiện chạy ứng dụng này.

Chạy dự án bằng artisan

Để chạy các ứng dụng PHP nói chung và Laravel nói riêng, nếu trên máy cá nhân đã cài đặt ứng dụng máy chủ web như Apache, Nginx thì chúng ta chỉ cần start các ứng dụng này. Tuy nhiên, nếu bạn chưa cài đặt các máy chủ web thì Laravel cũng cung cấp một cách khác để có thể thực thi các ứng là thông qua công cụ Artisan.

Artisan bản chất là một class viết bằng PHP có thể thực hiện được bằng dòng lệnh theo cú pháp:

php artisan option

Chúng ta cũng không nhất thiết phải cài đặt phần mềm máy chủ web như Nginx hoặc Apache mà có thể chạy project thông qua câu lệnh

php artisan serve

khi đó, dự án có thể truy cập được bằng địa chỉ http://localhost:8000 thông qua trình duyệt. Nhược điểm của sử dụng Artisan để chạy ứng dụng là bạn luôn phải bật màn hình console, nhược điểm thứ hai là khi chúng ta phát triển đồng thời nhiều dự án thì nên cài đặt phần mềm máy chủ web.

Màn hình chạy Artisan

Như vậy, khi chạy địa chỉ http://127.0.0.1:8000 chính là trang chủ ứng dụng todo-app vừa cài đặt.

Màn hình bắt đầu Laravel

Giờ là lúc chúng ta thực hiện ứng dụng Hello World nhé, bạn vào thư mục resources -> views mở file welcome.blade.php và thay đổi nội dung trong thẻ body thành:

<body>
    <div class="flex-center position-ref full-height">
        <div class="content">
            <div class="title m-b-md">
                Hello World
            </div>
        </div>
    </div>
</body>

Lưu file và quay lại ứng dụng của chúng ta, refresh và chúng ta có Hello World.

Ví dụ Hello World

Các công cụ cần thiết để phát triển ứng dụng Laravel

IDE, trình soạn thảo cho Laravel 2019

IDE, trình soạn thảo code

Chúng ta cần viết code, và đương nhiên chúng ta cần một ứng dụng có thể soạn thảo, đơn giản nhất có thể chỉ cần Nodepad, nano... Nhưng các ứng dụng này không highlight code do đó rất khó nhìn. Các trình soạn thảo có thể phân loại như sau:

Nếu máy tính có cấu hình không mạnh, chúng ta nên lựa chọn trình soạn thảo mã nguồn vì nó chạy rất nhẹ nhàng và cũng có thể đáp ứng đến 98% những công việc phát triển dự án.

Môi trường phát triển

Môi trường phát triển bao gồm các ứng dụng như máy chủ web, cơ sở dữ liệu, ứng dụng biên dịch PHP... Hiện có 3 cách thức để tạo môi trường phát triển:

  • Truyền thống: Cài đặt từng thành phần riêng như máy chủ web Apache hoặc Nginx, trình biên dịch PHP, cơ sở dữ liệu MySQL, PostgreSQL.
  • Sử dụng các phần mềm tổng hợp cài All in one kiểu như XAMPP, WAMPP, LEMP, LAMP... và mới nhất nếu bạn sử dụng Windows thì Laragon là một phần mềm được đánh giá tốt nhất (Trong video hướng dẫn sử dụng Laragon).
  • Sử dụng công nghệ ảo với Laravel Homestead: ảo hóa giúp môi trường phát triển hoàn toàn cách ly với môi trường trên máy tính bạn đang làm việc hàng ngày, nó cũng cài đặt hàng loạt các ứng dụng cần thiết do vậy bạn chỉ cần tập trung vào phát triển mà thôi. Tuy nhiên, máy tính cá nhân của bạn yêu cầu một cấu hình tương đối khi bạn chọn phương án này.

Với kinh nghiệm của tôi, nếu bạn sử dụng Windows thì môi trường phát triển tốt nhất là sử dụng SublimeText để soạn thảo và Laragon để tạo ra môi trường phát triển Laravel. Combo này phù hợp với cả những máy tính cùi bắp nhất.

Tham khảo: Cài đặt Laravel dễ dàng với Laragon

Code: Bài 1 - HelloWorld

Các bước thực hiện:

  • Tải về và giải nén.
  • Thực hiện lệnh composer update để tải các package đi kèm.
  • Nếu không dùng apache, nginx thì sử dụng php artisan serve. Vào đường dẫn http://localhost:8000 để xem ứng dụng.

CÁC BÀI VIẾT KHÁC

FirebirD

Đam mê Toán học, Lập trình. Sở thích chia sẻ kiến thức, Phim hài, Bóng đá, Cà phê sáng với bạn bè.

All Laravel chuyển đổi sang OctoberCMS thành công

Todo list: Làm quen với View, Route trong Laravel

1 Bình luận trong "Todo List: Cài đặt môi trường Laravel"

  1. penang

    5 months ago

    Phản hồi

    Bạn có thể giới thiệu cách cài đặt và sử dụng Larave Homestead không? các cách nêu ra trong bài chạy ổn nhưng không lẽ laravel tạo ra homestead là thừa?

Thêm bình luận