Một ngôn ngữ phía máy chủ tương tự như JavaScript ở chỗ nó cho phép bạn nhúng các chương trình nhỏ (tập lệnh) vào mã HTML của trang web. Khi được thực thi, các chương trình này cung cấp cho bạn quyền kiểm soát lớn hơn đối với những gì xuất hiện trong cửa sổ trình duyệt so với chỉ HTML có thể cung cấp. Sự khác biệt chính giữa JavaScript và PHP là giai đoạn tải trang web mà tại đó các chương trình nhúng này được thực thi.
Các ngôn ngữ phía máy khách như JavaScript được trình duyệt web đọc và thực thi sau khi tải xuống trang web (chương trình nhúng và tất cả) từ máy chủ web. Ngược lại, các ngôn ngữ phía máy chủ như PHP được chạy bởi máy chủ web , trước khi gửi trang web tới trình duyệt. Trong khi các ngôn ngữ phía máy khách cung cấp cho bạn quyền kiểm soát cách trang hoạt động sau khi trình duyệt hiển thị, ngôn ngữ phía máy chủ cho phép bạn tạo các trang tùy chỉnh nhanh chóng trước khi chúng được gửi đến trình duyệt.
Khi máy chủ web đã thực thi mã PHP được nhúng trong một trang web, kết quả sẽ thay thế mã PHP trong trang. Tất cả các trình duyệt nhìn thấy là mã HTML tiêu chuẩn khi nó nhận được trang, do đó có tên ngôn ngữ phía máy chủ. Hãy xem ví dụ đơn giản về một số PHP tạo ra một số ngẫu nhiên trong khoảng từ 1 đến 10 và sau đó hiển thị nó trên màn hình:
Hầu hết đây là HTML đơn giản. Chỉ có dòng giữa và là mã PHP. đánh dấu sự khởi đầu của một tập lệnh PHP nhúng và đánh dấu sự kết thúc của nó. Máy chủ web được yêu cầu giải thích mọi thứ giữa hai dấu phân cách này và chuyển đổi nó thành mã HTML thông thường trước khi nó gửi trang web đến trình duyệt yêu cầu. Nếu bạn nhấp chuột phải vào bên trong trình duyệt của bạn và chọn Xem Nguồn (văn bản có thể khác tùy thuộc vào trình duyệt bạn đang sử dụng), bạn có thể thấy trình duyệt được trình bày như sau:<?php?><?php?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Random Number</title>
</head>
<body>
<p>Generating a random number between 1and10:
5
</p>
</body>
</html>
Lưu ý rằng tất cả các dấu hiệu của mã PHP đã biến mất. Ở vị trí của nó, đầu ra của tập lệnh đã xuất hiện và nó trông giống như HTML tiêu chuẩn. Ví dụ này cho thấy một số lợi thế của kịch bản phía máy chủ
Không có vấn đề tương thích trình duyệt . Các tập lệnh PHP chỉ được giải thích bởi máy chủ web, do đó không cần phải lo lắng về việc các tính năng ngôn ngữ bạn đang sử dụng có được trình duyệt của khách truy cập hỗ trợ hay không.
Truy cập vào tài nguyên phía máy chủ . Trong ví dụ trên, chúng tôi đã đặt một số ngẫu nhiên được tạo bởi máy chủ web vào trang web. Nếu chúng tôi đã chèn số bằng JavaScript, số đó sẽ được tạo trong trình duyệt và ai đó có khả năng sửa đổi mã để chèn một số cụ thể. Cấp, có nhiều ví dụ ấn tượng hơn về việc khai thác tài nguyên phía máy chủ, chẳng hạn như chèn nội dung được rút ra khỏi cơ sở dữ liệu MySQL.
Giảm tải cho khách hàng . JavaScript có thể trì hoãn việc hiển thị trang web một cách đáng kể (đặc biệt là trên thiết bị di động!) Vì trình duyệt phải chạy tập lệnh trước khi có thể hiển thị trang web. Với mã phía máy chủ, gánh nặng này được chuyển đến máy chủ web, bạn có thể thực hiện một cách mạnh mẽ như ứng dụng của bạn yêu cầu (và ví của bạn có thể đủ khả năng).
Lựa chọn . Khi viết mã chạy trong trình duyệt, trình duyệt phải hiểu cách chạy mã được cung cấp cho nó. Tất cả các trình duyệt hiện đại đều hiểu HTML, CSS và JavaScript. Để viết một số mã chạy trong trình duyệt, bạn phải sử dụng một trong những ngôn ngữ này. Bằng cách chạy mã trên máy chủ tạo HTML, bạn có thể lựa chọn nhiều ngôn ngữ, một trong số đó là PHP.
Cú pháp và Cú pháp Cơ bản
Cú pháp PHP sẽ rất quen thuộc với bất kỳ ai có hiểu biết về JavaScript, C, C ++, C #, Objective-C, Java, Perl hoặc bất kỳ ngôn ngữ có nguồn gốc C nào khác. Nhưng nếu những ngôn ngữ này không quen thuộc với bạn hoặc nếu bạn chưa quen với lập trình nói chung, thì không cần phải lo lắng về nó.
Một tập lệnh PHP bao gồm một loạt các lệnh hoặc câu lệnh. Mỗi câu lệnh là một hướng dẫn phải được theo dõi bởi máy chủ web trước khi có thể tiến hành hướng dẫn tiếp theo. Các câu lệnh PHP, giống như các câu trong các ngôn ngữ đã nói ở trên, luôn bị chấm dứt bởi dấu chấm phẩy ( ).;
Đây là một tuyên bố PHP điển hình:
echo 'This is a <strong>test</strong>!';
Đây là một tuyên bố, được sử dụng để tạo nội dung (thường là mã HTML) để gửi đến trình duyệt. Một câu lệnh chỉ đơn giản là lấy văn bản mà nó đưa ra và chèn nó vào mã HTML của trang ở vị trí của tập lệnh PHP nơi nó được chứa.echoecho
Trong trường hợp này, chúng tôi đã cung cấp một chuỗi văn bản được xuất ra : . Lưu ý rằng chuỗi văn bản chứa các thẻ HTML ( và ), hoàn toàn chấp nhận được.This is a <strong>test</strong>!<strong></strong>
Vì vậy, nếu chúng tôi lấy tuyên bố này và đưa nó vào một trang web hoàn chỉnh, thì đây là mã kết quả:
Nếu bạn đặt tệp này trên máy chủ web của mình và sau đó yêu cầu tệp đó bằng trình duyệt web, trình duyệt của bạn sẽ nhận được mã HTML này:
<!DOCTYPE html>
<htmllang="en">
<head>
<metacharset="utf-8">
<title>Test page</title>
</head>
<body>
<p>This is a <strong>test</strong>!</p>
</body>
</html>
Các ví dụ, chúng tôi đã xem xét trước đó chứa một chút phức tạp hơn tuyên bố:random.phpecho
echorand(1,10);
Bạn sẽ nhận thấy rằng, trong ví dụ đầu tiên, PHP được cung cấp một số văn bản để in trực tiếp và trong lần thứ hai, PHP được cung cấp một hướng dẫn để làm theo. PHP cố gắng đọc bất cứ điều gì tồn tại bên ngoài các trích dẫn như một hướng dẫn mà nó phải tuân theo. Bất cứ điều gì bên trong dấu ngoặc kép đều được coi là một chuỗi , điều đó có nghĩa là PHP hoàn toàn không xử lý nó mà chỉ chuyển nó đến lệnh bạn đã gọi. Vì vậy, đoạn mã sau sẽ truyền trực tiếp chuỗi vào lệnh:This is a <strong>test</strong>!echo
echo 'This is a <strong>test</strong>!';
Một chuỗi được biểu thị bằng cách sử dụng trích dẫn bắt đầu và trích dẫn kết thúc. PHP sẽ xem cái đầu tiên là phần đầu của chuỗi và tìm phần tiếp theo và sử dụng phần đó làm phần cuối của chuỗi.''
Ngược lại, đoạn mã sau trước tiên sẽ chạy hàm tích hợp để tạo một số ngẫu nhiên và sau đó chuyển kết quả cho lệnh echo:rand
echorand(1,10);
Bạn có thể nghĩ về các hàm dựng sẵn như các tác vụ mà PHP biết cách thực hiện mà không cần phải đánh vần các chi tiết. PHP có nhiều hàm dựng sẵn cho phép bạn làm mọi thứ, từ gửi email đến làm việc với thông tin được lưu trữ trong các loại cơ sở dữ liệu khác nhau.
PHP sẽ không cố chạy bất cứ thứ gì trong chuỗi. Các mã sau đây sẽ không có kết quả mà bạn có thể mong đợi:
echo 'rand(1, 10)';
Thay vì chạy hàm inbuilt , PHP sẽ xem nó như một chuỗi và thay vì in ra một số ngẫu nhiên, nó thực sự sẽ gửi văn bản tới trình duyệt, đây có thể không phải là điều bạn muốn làm. Điều quan trọng là phải hiểu sự khác biệt giữa một chuỗi và mã . PHP sẽ thấy bất kỳ văn bản nào bên ngoài dấu ngoặc kép là một chuỗi các lệnh cần tuân theo. Bất cứ điều gì bên trong dấu ngoặc kép là một chuỗi và là dữ liệu mà PHP sẽ làm việc với.randrand(1, 10)
PHP không cố gắng hiểu chuỗi. Chúng có thể chứa bất kỳ ký tự theo thứ tự nào. Nhưng mã mã mà về cơ bản là một chuỗi các hướng dẫn mà sát thương theo một cấu trúc cứng nhắc để máy tính hiểu được nó.
Đánh dấu cú pháp
Sử dụng trình soạn thảo với tô sáng cú pháp giúp bạn dễ dàng nhanh chóng xem liệu thứ gì đó là chuỗi hay mã. Các chuỗi sẽ được hiển thị bằng một màu khác với mã cần được xử lý.
Báo giá
PHP hỗ trợ cả dấu ngoặc đơn và dấu ngoặc kép để chứa chuỗi. Đối với hầu hết các mục đích, chúng có thể hoán đổi cho nhau. Các nhà phát triển PHP có xu hướng ủng hộ các trích dẫn đơn, bởi vì chúng tôi xử lý mã HTML rất nhiều, có xu hướng chứa nhiều trích dẫn kép. Ví dụ:'"
Nếu trích dẫn kép được sử dụng ở đây, chúng ta cần nói với PHP rằng trích dẫn sau không phải là kết thúc chuỗi bằng cách đặt trước dấu ngoặc kép (được gọi là ký tự thoát ) và thực hiện tương tự với bất kỳ trích dẫn nào chúng ta thực sự muốn gửi đến trình duyệt là một phần của HTML:href=\
Vì lý do này, các nhà phát triển PHP sử dụng các trích dẫn đơn, mặc dù có một số khác biệt giữa hai trích dẫn. Đối với mục đích của chúng tôi, chúng có thể thay thế cho nhau.
Khi bạn gọi một hàm trong PHP, nghĩa là, hãy yêu cầu nó thực hiện công việc của nó. Bạn được cho là đang gọi hàm đó. Hầu hết các hàm trả về một giá trị khi chúng được gọi; PHP sau đó hành xử như thể bạn thực sự vừa gõ giá trị trả về trong mã của bạn. Trong ví dụ này, câu lệnh của chúng ta chứa một lệnh gọi hàm, trả về một số ngẫu nhiên dưới dạng một chuỗi văn bản. Câu lệnh sau đó xuất giá trị được trả về bởi lệnh gọi hàm.echo 'rand(1, 10)';echorandecho
Mỗi hàm trong PHP có thể có một hoặc nhiều đối số cho phép bạn làm cho hàm hoạt động theo một cách hơi khác. Các chức năng hai đối số: số ngẫu nhiên tối thiểu và tối đa. Bằng cách thay đổi các giá trị được truyền cho hàm, bạn có thể thay đổi cách thức hoạt động của nó. Ví dụ: nếu bạn muốn một số ngẫu nhiên trong khoảng từ 1 đến 50, bạn có thể sử dụng mã:rand
echorand(1,50);
Bạn có thể tự hỏi tại sao chúng ta cần bao quanh các đối số bằng dấu ngoặc đơn ( ). Các dấu ngoặc đơn phục vụ hai mục đích. Đầu tiên, họ chỉ ra rằng đó là một chức năng mà bạn muốn gọi. Thứ hai, chúng đánh dấu điểm bắt đầu và kết thúc của một danh sách các đối số Các câu lệnh PHP mà bạn muốn cung cấp để nói với hàm những gì bạn muốn nó làm. Trong trường hợp của hàm, bạn cần cung cấp giá trị tối thiểu và tối đa. Những giá trị được phân tách bằng dấu phẩy.(1, 50)randrand
Sau này, chúng ta sẽ xem xét các hàm có các loại đối số khác nhau. Chúng tôi cũng sẽ xem xét các chức năng không có đối số nào cả. Các hàm này vẫn sẽ cần dấu ngoặc đơn, mặc dù sẽ không có gì để gõ giữa chúng.
إرسال تعليق