PHP là gì?

PHP là gì?

Mở đầu về chương trình giới thiệu các kiến thức cơ bản về php, mình sẽ đi xem php là gì?, tìm hiểu về webserver, cách để cài đặt nó và thử với chương trình huyền thoại "Hello world!"

Đầu tiên, PHP là gì?

**PHP** (viết tắt đệ quy của PHP: Hypertext Preprocessor) là tập hợp con của các ngôn ngữ script như JavaScript và Python.

Vậy ngôn ngữ script là gì? Ngôn ngữ script hay scripting language là ngôn ngữ tự động hóa việc thực hiện các tác vụ trong môi trường runtime đặc biệt. Trong lập trình web, chúng bao gồm việc yêu cầu một trang web tĩnh (HTML&CSS) thực hiện các hành động cụ thể với quy tắc bạn đã xác định trước.

Ví dụ như bạn có thể sử dụng script để xác thực biểu mẫu đảm bảo tất cả các trường đã được điền trước khi nó được gửi trở lại server. Script sẽ chạy và sau đó kiểm tra tất cả các trường khi người dùng gửi biểu mẫu. Nếu biểu mẫu trống, cảnh báo sẽ hiển thị để thông báo cho người dùng.

Sự khác biệt là ngôn ngữ PHP chủ yếu được sử dụng để giao tiếp phía server trong khi JavaScript có thể được sử dụng cho cả frontend cũng như backend và Python – chỉ dành cho phía client (backend).

PHP là gì?

Như đã đề cập, PHP là ngôn ngữ script được tạo cho các giao tiếp phía server. Do đó, nó có thể xử lý các chức năng phía server như thu thập dữ liệu biểu mẫu, quản lý file trên server, sửa đổi cơ sở dữ liệu và nhiều hơn nữa. PHP được sử dụng rộng rãi nhất để phát triển web do tính năng nhúng vào file HTML của nó.

Như trong ví dụ dưới đây:

<!DOCTYPE html>
<html>
    <head>
        <title>Example</title>
    </head>
    <body>
        <?php
            echo "Hi, I'm a PHP script!";
        ?>

    </body>
</html>

Ta thấy thay vì dùng nhiều lệnh để xuất ra HTML (như trong C hoặc Perl), khi dùng PHP chứa HTML với code nhúng thực hiện "bất kì điều gì đó" (ví dụ: xuất ra text "Hi, I'm a PHP script!"). Như trong ví dụ, để nhúng PHP ta sử dụng <?php ... ?> - nội dung giữa <?php?> cho phép bạn sử dụng code php trong đó.

Tìm hiểu Webserver và PHP

Để chạy được các Script PHP mới mục đích tìm hiểu về nguyên lý, cú pháp cốt yếu của ngôn ngữ này thì chỉ việc cài đặt [PHP Install PHP](https://www.php.net/manual/en/install.php). Để tạo và chạy một trang Web đầy đủ tính năng thường cần một hệ thống gồm:
  • HTTP Server hoàn chỉnh (như Apache, Nginx) - máy chủ này nhận các request đến (HTTP Request) và gọi PHP nếu request đó cần thi hành script PHP, kết quả trả về cho client HTTP Response.
  • PHP engine - chương trình phần tích cú pháp PHP và thực thi code PHP.
  • Một máy chủ cơ sở dữ liệu (nếu cần)

Giải thích về các thành phần cơ bản trên ta xem cách chúng làm việc thế nào với hình dưới.

B1: Trước tiên người dùng truy cập Website bằng browse và sẽ gửi các request đến Server.

B2: Webserver nhận và phân tích request nếu xác định được Script PHP cần chạy thì Web Server sẽ yêu cầu chạy Script PHP đó. Lúc này nhiệm vụ xử lý sẽ là của PHP.

B3: PHP chạy các Script, đồng thời cũng truy vấn đến database và File System trên Server để hoàn thành nhiệm vụ bạn đặt ra. Cuối cùng nó trả về cho Webserver thường là nội dung HTML và mã trạng thái.

B4: Webserver gửi nội dung HTML về cho browser và browser nhận được tiến hành Render HTML. Bạn sẽ nhìn thấy nội dung trang Web.

Cài đặt môi trường phát triển

Cài đặt trên môi trường windows

Trên môi trường Windows OS thì việc cài từng gói phần mềm(php, HTTP Server, mysql...) khá phức tạp nên mình chọn một gói phần mềm tích hợp sẵn cả ba thành phần trên và một lần cài đặt là xong. Mình có chọn Xampp với Apache, MySQL, PHP được tích hợp sẵn trên Windows.

Cài đặt trên môi trường MacOS

Với môi trường dạng linux thì bạn chỉ cần cài đặt bằng các câu lệnh đơn giản dưới đây:

$ brew install nginx
$ brew install php
$ brew install mysql

để trang bị lần lượt HTTP Server, php và mysql trên MacOS.(Yêu cầu MacOS của bạn đã được trang bị HomeBrew)

Thử kết quả chương trình chạy được

Bạn tạo 1 file huyền thoại là hello.php với nội dung:

<?php
    echo "Hello World!\n";
?>

Để chạy file hello.php này, ta thực hiện lệnh:

$ php hello.php

Kết quả sẽ là:

Nếu muốn code trên truy cập qua trình duyệt thì
cách đơn giản là sử dụng PHP chạy máy chủ HTTP, giả sử ta sẽ chạy máy chủ làm việc trên thư mục learn-php và lắng nghe ở port 8080 thì tại thư mục learn-php đó ta thực hiện lệnh:

$ php -S 127.0.0.1:8080

Và kết quả nhận được là:

Tóm lại

Trên đây mình đã giới thiệu những kiến thức đầu tiên về **PHP** cũng như cách cài đặt và sử dụng nó. Trong bài tiếp theo của series này mình sẽ tiếp tục giới thiệu về các kiến thức cơ bản trong php. Các bạn chú ý theo dõi nhé. ([Link tham khảo bài tiếp theo của series](https://blog.haposoft.com/php-va-nhung-dieu-co-ban-phan-1))