Php là ngôn ngữ lập trình đầu tiên. Xuất HTML bằng PHP. PHP là gì

PHP là ngôn ngữ lập trình phía máy chủ chạy ở phía máy chủ, trong khi JavaScript chạy trong trình duyệt ở phía người dùng.

Cả PHP và Javascript đều có thể được nhúng vào các trang HTML.

Sau khi đọc bài viết này về lập trình PHP, bạn sẽ học:

  • Ngôn ngữ kịch bản là gì?
  • Ngôn ngữ kịch bản so với ngôn ngữ lập trình
  • PHP có nghĩa là gì?
  • PHP là gì?
  • Cú pháp PHP.
  • Tại sao bạn cần PHP?
  • PHP được sử dụng để làm gì và thị phần của nó là bao nhiêu?
  • PHP so với ASP.NET so với JSP so với CFML.
  • Phần mở rộng tệp PHP.
  • Một chương trình PHP đơn giản.
Ngôn ngữ kịch bản và ngôn ngữ lập trình PHP đại diện cho điều gì?

PHP là viết tắt của Personal Home Page nhưng hiện nay Hypertext Preprocessor đang được sử dụng ngày càng nhiều.

Mã PHP có thể được nhúng trong HTML hoặc được sử dụng trong CMS và các khung web.

PHP là gì?

Mục đích chính của ngôn ngữ lập trình PHP là phát triển:

  • Trang web tĩnh;
  • Các trang web động;
  • Ứng dụng web.

Các tập lệnh PHP chỉ có thể được thực thi trên các máy chủ đã cài đặt trình thông dịch của ngôn ngữ này.

Các máy khách truy cập tập lệnh PHP sẽ chỉ cần có trình duyệt. Tệp PHP chứa các thẻ và có phần mở rộng .php.

Cú pháp PHP

Tệp PHP cũng có thể chứa các tập lệnh máy khách HTML và JavaScript.

  • Kiến thức về HTML sẽ là một lợi thế học PHP. Bạn có thể học PHP mà không cần biết HTML, nhưng ít nhất bạn nên biết những điều cơ bản;
  • DBMS cho các ứng dụng hoạt động bằng cơ sở dữ liệu;
  • Để triển khai thêm nhiệm vụ phức tạp Bạn sẽ cần sự kết hợp giữa JavaScript và XML.

Hình dưới đây thể hiện kiến ​​trúc cơ bản của một ứng dụng web và cách máy chủ xử lý các yêu cầu. Điều quan trọng cần biết khi học lập trình PHP từ đầu:

Tại sao bạn cần PHP?
  • PHP là nguồn mở và miễn phí;
  • Nó dễ học hơn JSP, ASP, v.v.;
  • Cộng đồng nhà phát triển lớn;
  • Hầu hết các trang web lưu trữ đều hỗ trợ PHP, điều này không thể nói về ASP, vì nó yêu cầu hỗ trợ IIS;
  • PHP được cập nhật liên tục;
  • PHP cung cấp tính năng tích hợp sẵn Hỗ trợ MySQL. PHP cũng có thể được sử dụng với:
  • Postgres ;
  • Lời tiên tri ;
  • Máy chủ MS SQL;
  • ODBC;
  • PHP là một ngôn ngữ đa nền tảng. Điều này có nghĩa là bạn có thể triển khai ứng dụng của mình trên nhiều hệ điều hành, bao gồm Windows, Linux, Mac OS và các hệ điều hành khác.
PHP được sử dụng để làm gì và thị phần của nó là bao nhiêu?

TRÊN Dựa trên PHP chạy hơn 20 triệu trang web và ứng dụng web:


PHP so với ASP.NET so với JSP so với CFML

ASP - Trang máy chủ hoạt động.
JSP - Trang máy chủ Java.
CFML - Ngôn ngữ đánh dấu kết hợp lạnh.

Bảng dưới đây so sánh sự khác nhau ngôn ngữ máy chủ với ngôn ngữ lập trình PHP.

Tài sản PHP A.S.P. JSP CFML
Khả năng học tập Nhanh Dài hơn PHP Dài hơn PHP Dài hơn PHP
Lưu trữ Được hỗ trợ bởi hầu hết tất cả các chủ nhà. Cần có một máy chủ chuyên dụng. Tương đối tốt. Cần có một máy chủ chuyên dụng.
Mã nguồn mở Đúng KHÔNG Đúng Thương mại và mã nguồn mở phiên bản
Hỗ trợ dịch vụ web Được xây dựng trong .NET framework được sử dụng Thư viện bổ sung được sử dụng Được xây dựng trong
Tích hợp HTML Đơn giản Khá phức tạp Khá phức tạp Đơn giản
Hỗ trợ MySQL Tự nhiên Trình điều khiển bên thứ ba sẽ được yêu cầu TRONG Phiên bản hiện tại Có hỗ trợ bản địa. TRONG những phiên bản trước ODBC được sử dụng
Bổ sung các ngôn ngữ khác Đúng KHÔNG Sử dụng các lớp và thư viện Java Đúng
Phần mở rộng tệp PHP

Để máy chủ nhận dạng được tệp PHP, tài liệu phải được lưu với phần mở rộng .php. Trước đây, các phần mở rộng PHP cũng bao gồm:

  • .phtml
  • .php3
  • .php4
  • .php5
  • .php

PHP được thiết kế để hoạt động với HTML, do đó nó có thể được nhúng vào mã HTML:

Trong lập trình web PHP, bạn có thể tạo tệp mà không cần sử dụng thẻ HTML và điều này sẽ được xem xét mã sạch. Máy chủ thực thi mã PHP và xuất kết quả ra trình duyệt dưới dạng mã HTML.

Để máy chủ có thể phân biệt PHP với HTML, mã phải luôn được đóng khung bằng các thẻ thích hợp. PHP phân biệt chữ hoa chữ thường. Điều này có nghĩa là "VAR" không giống với "var".

Bản thân các thẻ PHP không phân biệt chữ hoa chữ thường, nhưng nên sử dụng chữ thường:

Chúng tôi coi các dòng mã PHP là biểu thức. Chúng kết thúc bằng dấu chấm phẩy (; ). Nếu bạn chỉ có một biểu thức thì có thể bỏ qua dấu chấm phẩy. Nếu có nhiều hơn một biểu thức thì mỗi dòng phải kết thúc bằng dấu chấm phẩy.

PHP Xin chào thế giới

Chương trình dưới đây là một ứng dụng PHP đơn giản in ra dòng chữ “Hello World!” ” trong trình duyệt.

Bản tóm tắt
  • Ngôn ngữ lập trình PHP là viết tắt của bộ xử lý trước siêu văn bản;
  • PHP chạy ở phía máy chủ. Điều này giúp loại bỏ sự cần thiết phải cài đặt thêm phần mềm tới thiết bị người dùng;
  • Các tệp PHP phải được lưu với phần mở rộng .php;
  • PHP là mã nguồn mở và được hỗ trợ trên nhiều nền tảng.

Dịch bài viết “PHP là gì? Viết chương trình PHP đầu tiên của bạn” được chuẩn bị bởi nhóm dự án thân thiện

PHP là ngôn ngữ kịch bản được sử dụng rộng rãi mục đích chung mã nguồn mở.

Nói một cách đơn giản, PHP là ngôn ngữ lập trình được thiết kế đặc biệt để viết các ứng dụng web (tập lệnh) chạy trên máy chủ web.

PHP viết tắt là viết tắt của “Hypertext Preprocessor”. Cú pháp ngôn ngữ này xuất phát từ C, Java và Perl. PHP có ưu điểm là cung cấp cho các nhà phát triển web khả năng. tạo nhanh các trang web được tạo động.

Tính năng PHP

Có ba lĩnh vực chính mà PHP được sử dụng.

Tạo các tập lệnh để được thực thi ở phía máy chủ. PHP được sử dụng rộng rãi nhất theo cách này. Tất cả những gì bạn cần là một trình phân tích cú pháp PHP (ở dạng chương trình CGI hoặc mô-đun máy chủ), máy chủ web và trình duyệt. Để xem kết quả thực thi các tập lệnh PHP trong trình duyệt, bạn cần có máy chủ web đang chạy và cài đặt PHP.

Tạo tập lệnh để chạy trong dòng lệnh. Bạn có thể tạo tập lệnh PHP có thể chạy độc lập với máy chủ web và trình duyệt. Tất cả những gì bạn cần là một trình phân tích cú pháp PHP. Cách sử dụng PHP này lý tưởng cho các tập lệnh cần được thực thi thường xuyên, ví dụ như sử dụng cron (trên nền tảng *nix hoặc Linux) hoặc sử dụng Trình lập lịch tác vụ trên Nền tảng Windows. Những tập lệnh này cũng có thể được sử dụng trong các tác vụ xử lý văn bản đơn giản. thông tin thêmở đây.

Sự sáng tạo ứng dụng GUI thực thi ở phía client. Có lẽ PHP không phải là tốt nhất ngôn ngữ tốt nhấtđể tạo ứng dụng tương tự, nhưng nếu PHP được nhiều người biết đến và bạn muốn sử dụng một số khả năng của nó trong các ứng dụng khách của mình thì bạn có thể sử dụng PHP-GTK để tạo các ứng dụng đó. Bạn có thể tạo các ứng dụng đa nền tảng theo cách tương tự. PHP-GTK là một phần mở rộng PHP và không có trong bản phân phối PHP.

Lịch sử của PHP

Nguồn gốc của PHP nằm ở một sản phẩm cũ có tên PHP/FI. PHP/FI được Rasmus Lerdorf tạo ra vào năm 1995 và là một tập hợp các tập lệnh Perl để lưu giữ số liệu thống kê về số lượt truy cập vào sơ yếu lý lịch của ông.

Rasmus Lerdorf (sinh ngày 22 tháng 11 năm 1968) là một lập trình viên người Đan Mạch (hiện đang sống ở Canada), người đã viết một bộ kịch bản Perl/CGI vào năm 1994.

Phát triển web chưa mới bắt đầu thôi, không phương tiện đặc biệt không có giải pháp nào cho những vấn đề như vậy và hàng loạt tin nhắn kèm theo câu hỏi đổ về tác giả. Lerdorf bắt đầu tặng miễn phí các công cụ của mình, được gọi là “Công cụ trang chủ cá nhân”. Rất nhanh chóng, cần có nhiều chức năng hơn và Rasmus đã viết một phiên bản mới, mở rộng hơn nhiều bằng C, làm việc với cơ sở dữ liệu và cho phép người dùng phát triển các ứng dụng web đơn giản. Rasmus Lerdorf quyết định phát hành mã nguồn PHP/FI để công chúng xem, sửa lỗi và bổ sung.

PHP/FI (Trang chủ cá nhân / Trình thông dịch biểu mẫu - Cá nhân Trang chủ/Trình thông dịch biểu mẫu) bao gồm chức năng cơ bản của PHP ngày nay. Anh ta có những biến đổi trong phong cách Perl, giải thích tự động các biểu mẫu và khả năng được nhúng vào mã html. Cú pháp thực sự của ngôn ngữ này có nhiều điểm chung với Perl, mặc dù nó đơn giản và hạn chế hơn nhiều.

PHP/FI 2.0 được phát hành vào năm 1997. Phiên bản thứ hai của triển khai C đã xác định một nhóm người dùng: vài nghìn người trên khắp thế giới, với khoảng 50.000 tên miền, chiếm khoảng 1% tổng số tên miền Internet. Mặc dù thực tế là đã có nhiều người tham gia phát triển nhưng PHP/FI 2.0 vẫn dự án quan trọng một người đàn ông.

PHP/FI 2.0 không được phát hành chính thức cho đến tháng 11 năm 1997, sau khi dành phần lớn thời gian của nó cho các phiên bản beta. Ngay sau khi phát hành, nó đã được thay thế bằng phiên bản alpha của PHP 3.0.

PHP 3.0 là phiên bản đầu tiên giống với PHP như chúng ta biết ngày nay. Năm 1997, Andi Gutmans và Zeev Suraski viết lại mã từ đầu: các nhà phát triển nhận thấy PHP/FI 2.0 không phù hợp để phát triển ứng dụng thương mại điện tử, mà họ đã làm việc cho một dự án Đại học. Vì sự hợp tác về PHP 3.0 với sự trợ giúp của cơ sở nhà phát triển PHP/FI 2.0 Andy, Rasmus và Ziv đã quyết định hợp tác và tuyên bố PHP 3.0 là phiên bản kế thừa chính thức của PHP/FI, trong khi việc phát triển PHP/FI gần như đã bị dừng hoàn toàn.

Đến cuối năm 1998, PHP đã được hàng chục nghìn người dùng sử dụng. Hàng trăm ngàn trang web báo cáo rằng họ hoạt động bằng ngôn ngữ này. Tại đó giờ PHP 3.0 đã được cài đặt trên khoảng 10% máy chủ Internet!

PHP 3.0 được phát hành chính thức vào tháng 6 năm 1998 sau 9 tháng thử nghiệm công khai.

Vào mùa đông năm 1998, gần như ngay sau khi PHP 3.0 chính thức được phát hành, Andy Gutmans và Ziv Surasky bắt đầu làm lại lõi PHP. Mục tiêu là tăng năng suất ứng dụng phức tạp và cải thiện tính mô-đun của cơ sở mã PHP. Các tiện ích mở rộng đã mang lại cho PHP 3.0 khả năng hoạt động thành công với một bộ cơ sở dữ liệu và hỗ trợ một số lượng lớn nhiều API và giao thức khác nhau, nhưng PHP 3.0 không có hỗ trợ mô-đun chất lượng cao và các ứng dụng không hoạt động hiệu quả.

Công cụ mới, được gọi là "Zend Engine" (www.zend.com) (từ tên của những người sáng tạo: Zeev và Andi), đã xử lý thành công các nhiệm vụ và được giới thiệu lần đầu tiên vào giữa năm 1999. PHP 4.0, dựa trên công cụ này và mang theo một bộ chức năng bổ sung, được phát hành chính thức vào tháng 5 năm 2000, gần hai năm sau khi phát hành phiên bản tiền nhiệm PHP 3.0. Ngoài những cải tiến về hiệu suất, PHP 4.0 còn có một số cải tiến quan trọng khác như hỗ trợ phiên, bộ đệm đầu ra, v.v. cách an toàn xử lý đầu vào của người dùng và một số cấu trúc ngôn ngữ mới.

Phiên bản thứ năm của PHP được các nhà phát triển phát hành vào ngày 13 tháng 7 năm 2004. Những thay đổi này bao gồm bản cập nhật cho lõi Zend (Zend Engine 2), giúp tăng đáng kể hiệu quả của trình thông dịch. Hỗ trợ ngôn ngữ được giới thiệu Đánh dấu XML. Các hàm OOP đã được thiết kế lại hoàn toàn để rất giống với mô hình được sử dụng trong Java. Đặc biệt, hàm hủy, các thành viên và phương thức công khai, riêng tư và được bảo vệ, các thành viên và phương thức cuối cùng, giao diện và nhân bản đối tượng được giới thiệu. Các phiên bản tiếp theo cũng giới thiệu không gian tên, bao đóng và toàn bộ dòng những thay đổi khá nghiêm trọng, có thể so sánh về mặt định lượng và chất lượng với những thay đổi xuất hiện trong quá trình chuyển đổi sang PHP 5.0.

Phiên bản thứ sáu của PHP 6.0 đã được phát triển từ tháng 10 năm 2006. Nhiều cải tiến đã được thực hiện, chẳng hạn như việc loại bỏ khỏi kernel biểu thức chính quy POSIX và các mảng siêu toàn cầu "dài", loại bỏ các lệnh safe_mode, magic_quotes_gpc và register_globals khỏi tập tin cấu hình php.ini. Một trong những đổi mới chính được cho là hỗ trợ Unicode. Tuy nhiên, vào tháng 3 năm 2010, việc phát triển PHP6 được coi là vô ích do gặp khó khăn trong việc hỗ trợ Unicode. Nguồn PHP6 đã được chuyển sang một nhánh và phiên bản 5.4 trở thành dòng phát triển chính.

Năm 2014, một cuộc bỏ phiếu đã được tổ chức, kết quả phiên bản tiếp theođược gọi là PHP7. Lối ra phiên bản mớiđã được lên kế hoạch vào giữa tháng 10 năm 2015. Vào tháng 3 năm 2015, Zend đã trình bày một đồ họa thông tin mô tả những đổi mới chính của PHP 7.

Kiến trúc PHP

PHP là một trình thông dịch có khối dịch tích hợp giúp tối ưu hóa luồng thông dịch.

Việc sử dụng một trình thông dịch (và do đó là PHP) có những ưu điểm không thể phủ nhận:

1. Không cần phải lo lắng về việc giải phóng bộ nhớ được phân bổ, không cần phải đóng tệp khi làm việc xong với chúng - tất cả công việc thường ngày sẽ được thực hiện bởi người phiên dịch vì chương trình được thực hiện dưới sự kiểm soát chặt chẽ của anh ta;

2. Không cần suy nghĩ về loại biến và không cần khai báo biến trước khi sử dụng lần đầu;

3. Việc gỡ lỗi chương trình và phát hiện lỗi được đơn giản hóa rất nhiều - trình thông dịch có toàn quyền kiểm soát quá trình này;

4. Trong bối cảnh của các ứng dụng web, trình thông dịch cũng có rất nhiều lợi thế quan trọng– không có nguy cơ máy chủ “đóng băng” nếu chương trình không hoạt động chính xác.

Cú pháp PHP

Cú pháp PHP tương tự như cú pháp ngôn ngữ C. Một số phần tử như mảng kết hợp và vòng lặp foreach, mượn từ Perl.

Để chương trình hoạt động, không cần thiết phải mô tả bất kỳ biến, mô-đun nào được sử dụng, v.v. Bất kỳ chương trình nào cũng có thể bắt đầu trực tiếp bằng câu lệnh PHP.

Chương trình PHP đơn giản nhất trông như thế này:

Ngoài các bộ hạn chế, nó được phép sử dụng tùy chọn bổ sung, chẳng hạn như và .

Biến và kiểu dữ liệu

PHP là ngôn ngữ lập trình kiểu động, không yêu cầu đặc tả kiểu khi khai báo biến, cũng như khai báo chính biến. Việc chuyển đổi giữa các kiểu vô hướng thường được thực hiện ngầm định mà không cần nỗ lực thêm (tuy nhiên, PHP cung cấp nhiều cơ hội và để chuyển đổi loại rõ ràng).

Các kiểu dữ liệu vô hướng bao gồm:

toàn bộ loại (số nguyên),
kiểu dữ liệu thực (float, double),
kiểu logic (boolean),
kiểu chuỗi (chuỗi),
loại đặc biệt VÔ GIÁ TRỊ.

Các loại không vô hướng bao gồm:

"nguồn"
mảng (mảng),
đối tượng (đối tượng),

Các kiểu giả bao gồm:

hỗn hợp bất kỳ loại
số số (số nguyên hoặc số float)
gọi lại (chuỗi hoặc hàm ẩn danh)
vô hiệu không có tham số

Phạm vi số nguyên trong PHP phụ thuộc vào nền tảng (thường là phạm vi số nguyên có dấu 32 bit, nghĩa là −2,147,483,648 đến 2,147,483,647). Các số có thể được chỉ định ở dạng thập phân, bát phân và hệ thập lục phân Tính toán

Phạm vi số thực(gấp đôi) cũng phụ thuộc vào nền tảng (đối với kiến ​​trúc 32 bit, phạm vi cho phép bạn hoạt động với các số từ ±1,7×10−308 đến ±1,7×10+308).

PHP cung cấp cho các nhà phát triển một kiểu logic (boolean) chỉ có thể chấp nhận hai giá trị: TRUE (true) và FALSE (false). Khi được chuyển đổi sang kiểu boolean, số 0, dòng trống, số 0 trong chuỗi "0", NULL và một mảng trống được coi là SAI. Tất cả các giá trị khác được tự động chuyển thành TRUE.

Một chuỗi có thể được định nghĩa theo ba cách khác nhau.

  • dấu nháy đơn
  • dấu ngoặc kép
  • cú pháp di truyền

Cách đơn giản nhất để xác định một chuỗi là đặt chuỗi đó trong dấu ngoặc đơn ("ký tự"). Để sử dụng một dấu nháy đơn trong chuỗi, trước chuỗi đó phải có dấu gạch chéo ngược (\), tức là thoát. Nếu dấu gạch chéo ngược phải đứng trước trích dẫn duy nhất hoặc ở cuối dòng, bạn cần sao chép nó. Không cần phải thoát khỏi dấu gạch chéo ngược.

Nếu dòng được bao quanh trong dấu ngoặc kép("), PHP nhận ra số lượng lớn chuỗi thoát cho các ký tự đặc biệt:

định nghĩa di truyền (PHP):

Các biến bên trong heredoc được diễn giải. Nếu bạn muốn chỉ định phần cuối của tên, hãy đặt tên biến trong dấu ngoặc nhọn.

$s =