PHP là ngôn ngữ lập trình được sử dụng rất nhiều ở hiện tại. Tuy nhiên không phải ai cũng biết điều này. Vậy PHP là gì? Ưu và nhược điểm khi sử dụng PHP làm ngôn ngữ lập trình là gì? Hãy theo dõi bài viết sau đây để hiểu rõ hơn về ngôn ngữ lập trình PHP bạn nhé!
PHP là gì?
PHP là viết tắt của Hypertext Preprocessor. PHP là một ngôn ngữ kịch bản mã nguồn mở, thông dịch và hướng đối tượng, được thực hiện ở phía máy chủ. Nó được sử dụng để phát triển các ứng dụng web (nghĩa là một ứng dụng thực hiện ở phía máy chủ và tạo ra trang web động).
PHP là viết tắt của Hypertext Preprocessor.
PHP là một ngôn ngữ thông dịch, nghĩa là không cần biên dịch.
PHP là một ngôn ngữ kịch bản phía máy chủ.
PHP là một ngôn ngữ hướng đối tượng.
PHP là một ngôn ngữ kịch bản mã nguồn mở.
PHP là ngôn ngữ đơn giản và dễ học.
PHP nhanh hơn các ngôn ngữ kịch bản khác, ví dụ, ASP, JSP.
Ngôn Ngữ Lập Trình
Ngôn ngữ lập trình là một loại ngôn ngữ đặc biệt được thiết kế để giúp các lập trình viên có thể dễ dàng tạo ra các phần mềm (hay ứng dụng) máy tính. Ngôn ngữ lập trình bao gồm các quy tắc mà các lập trình viên cần tuân theo khi viết mã lệnh (source code).
Ví dụ về một số quy tắc có trong ngôn ngữ PHP:
Mã lệnh của chương trình cần được đặt trong cặp thẻ <?php ?>.
Sử dụng dấu hai chấm ; để kết thúc một câu lệnh.
Văn bản cần được đặt trong cặp dấu nháy đơn ‘ ‘ hoặc cặp dấu nháy kép ” “.
Mã Lệnh (Source Code)
Mã lệnh (source code) là một tập hợp các hướng dẫn (hay chỉ thị) được viết để yêu cầu máy tính thực hiện một số tác vụ nhất định. Mã lệnh được viết dưới dạng văn bản thuần túy và con người có thể đọc được.
Ngôn Ngữ Kịch Bản
PHP là ngôn ngữ kịch bản (scripting language). Ngôn ngữ kịch bản là một nhánh của ngôn ngữ lập trình. Tập tin chứa mã lệnh viết bằng ngôn ngữ kịch bản (như PHP) có thể được chạy (hay thực thi) trực tiếp trên máy mà không cần phải chuyển sang một định dạng khác.
Đối với các ngôn ngữ như C hay Pascal thì tập tin chứa mã lệnh (source code) cần phải được chuyển sang định dạng khác chứa machine code để máy tính có thể chạy được.
Mã Nguồn Mở
PHP là ngôn ngữ lập trình mã nguồn mở và điều này có nghĩa là bạn có thể sử dụng PHP hoàn toàn miễn phí. PHP có thể được chạy trên nhiều nền tảng hệ điều hành khác nhau như Windows, Mac OS và Linux.
Ngôn ngữ lập trình PHP có thể được sử dụng trên nhiều hệ điều hành khác nhau bao gồm Windows, Mac OS và Linux (Ubuntu, Linux Mint…). Phiên bản đầu tiên của PHP được viết bởi Rasmus Lerdorf và cho ra mắt vào năm 1994. Hiện nay, PHP đang là một trong những ngôn ngữ phổ biến hàng đầu được dùng trong lập trình web.
Tập Tin PHP
Các tập tin PHP chứa mã lệnh viết bằng ngôn ngữ PHP và được lưu trên máy tính (hoặc máy chủ) với phần mở rộng là .php. Việc tạo và chỉnh sửa nội dung các tập tin này thường được thực hiện bởi một chương trình hiệu chỉnh văn bản (hay còn gọi là text editor).
Dưới đây là danh sách các chương trình hiệu chỉnh mã lệnh phổ biến trên các hệ điều hành khác nhau:
Trên Windows: Notepad có sẵn hoặc Notepad++ (cần cài đặt thêm)
Trên Mac OSX: TextEdit
Trên Ubuntu: Gedit hoặc Vim
Các chương trình hiệu chỉnh mã lệnh sử dụng văn bản thuần túy để lưu trữ mã lệnh. Các ký tự trong văn bản thuần tuý không chứa các định dạng format như màu sắc, cỡ chữ, phông chữ, dấu gạch dưới…
Các văn bản mà ký tự bên trong nó có các định dạng như trên được gọi là văn bản giàu có (hay rich text). Văn bản giàu có được tạo ra bởi các phần mềm như Microsoft Word (trên Windows hay Mac OS), Open Office (trên Ubuntu..). Chính vì vậy chúng ta không dùng các phần mềm này để viết mã lệnh.
PHP được dùng để làm gì? Ứng dụng của nó ra sao?
Hiện tại PHP có rất nhiều các CMS (mã nguồn mở) như :joomla, WordPress, OpenCart, NukeViet… Bởi thế PHP rất đa dạng và nó sẽ giúp bạn thiết kế web bán hàng, tin tức, blog cá nhân cho tới những web giới thiệu công ty…
PHP có thể thực hiện các hàm hệ thống,VD: từ các file của một hệ thống, nó có thể tạo, mở, đọc, ghi và đóng chúng.
PHP có thể xử lý các form, ví dụ: thu thập dữ liệu từ file, lưu dữ liệu vào một file, thông qua email bạn có thể gửi dữ liệu, trả về dữ liệu tới người sử dụng.
Người sử dụng có thể thêm, sửa, xóa các phần tử bên trong Database của bạn thông qua PHP.
Thiết lập Cookie và truy cập các biến Cookie.
Sử dụng PHP, bạn có thể hạn chế người sử dụng truy cập vào một số trang trong Web của bạn.
Nó có thể mật mã hóa dữ liệu.
Sự khác biệt giữa HTML, XML, PHP, CSS và JavaScript
HTML – Bạn có thể tạo một trang web hoàn chỉnh chỉ biết điều này, tuy nhiên nó sẽ trông giống như những trang web của những năm 90 có liên kết màu xanh. Nó ở đó để tạo cấu trúc cơ bản cho một trang web và không thể (theo như tôi biết) để tạo bất kỳ trang web / trang web nào mà không sử dụng HTML.
CSS – Đây là những gì làm cho trang web của bạn đẹp và hiện đại. Nó chỉ dành cho tất cả các hiệu ứng hình ảnh và với phiên bản mới hoạt hình đơn giản.
JavaScript – Đó là ngôn ngữ lập trình thực chạy trong trình duyệt của bạn. Nó cung cấp cho trang web của bạn sức mạnh. Sử dụng JavaScript, bạn có thể đặt các phép tính, điều kiện logic và tất cả các chức năng lập trình. HTML một mình không thể làm điều đó.
PHP- Đây cũng là ngôn ngữ lập trình, nhưng nó không chạy trên trình duyệt của bạn. Nó chạy trên máy chủ web. Khi bạn yêu cầu một trang web bằng cách đặt url trong trình duyệt của bạn hoặc mở liên kết của nó, máy chủ web chấp nhận yêu cầu, lấy trang HTML, chạy tập lệnh PHP được liên kết trong đó, chuyển đổi kết quả thu được từ PHP sang HTML và sau đó trả lại cho trình duyệt của bạn. Trong trình duyệt, tất cả CSS và JavaScript đều chạy. PHP thường được sử dụng để nhận và đưa dữ liệu đến / từ cơ sở dữ liệu (chủ yếu là MySQL). Nó chạy trên các máy chủ dựa trên Linux.
XML- Nó hoàn toàn không liên quan đến các trang web. Đó chỉ là một cách lưu trữ dữ liệu được bọc trong các tệp XML. Gói dữ liệu văn bản được sử dụng để chúng ta không phải sử dụng cơ sở dữ liệu. Bạn sẽ không muốn gửi một bảng cơ sở dữ liệu đầy đủ khi bạn chỉ cần thông tin thời tiết hiện tại, phải không? Nó không chỉ được sử dụng để gửi dữ liệu, đôi khi nó còn được sử dụng để thể hiện giao diện Người dùng (trong Android và iOS, trong khi Windows sử dụng XAML cho điều đó). Các trang trong ứng dụng Android của bạn thường được mã hóa bằng XML, mà hệ thống Android (về mặt kỹ thuật là Dalvik VM hoặc ART hiện nay) đọc và chuyển đổi nó thành Java phù hợp. Nó chỉ để lưu trữ thông tin văn bản được phân tích cú pháp và cơ chế phân tích / đọc sử dụng nó cho mục đích riêng của họ. Cú pháp trông giống như các thẻ HTML.
ASP – Đó là một ngôn ngữ phía máy chủ khác giống như PHP, nhưng nó chạy trên Máy chủ dựa trên Windows. Hiện tại nó đã lỗi thời và ASP .net ngày nay được sử dụng nhiều hơn.
HTML5 – Đây là lần lặp lại tiếp theo của HTML cổ điển (HTML 4.1). Đây là một bộ công nghệ hoàn chỉnh, không chỉ HTML. Nó mang lại sức mạnh cho HTML để trở thành nhiều hơn một nhà cung cấp cấu trúc cơ bản. Với HTML5, bạn có thể đặt video và âm thanh vào trang của mình mà không cần sử dụng Flash hoặc silverlight. Nó có hỗ trợ cho thư viện đồ họa cao cấp WebGL có thể cung cấp cho bạn trải nghiệm tương tự như chơi trò chơi trên PC dựa trên DirectX và OpenGL. Trong thuật ngữ cư sĩ, WebGL có nghĩa là hỗ trợ cho đồ họa 3D cao cấp.
JSON- JSON giống như XML. Nó được sử dụng để lưu trữ và gửi dữ liệu văn bản. Cấu trúc của nó khó đọc hơn XML (do có nhiều dấu ngoặc nhọn), nhưng nó thường có kích thước nhỏ hơn. Ví dụ, để gửi XML, bạn cũng cần viết các thẻ, lược đồ và các ký tự khác, trong khi đối với các dấu hai chấm JSON (:) và dấu ngoặc nhọn là đủ.
Đặc trưng của PHP
5 đặc trưng quan trọng làm PHP trở thành ngôn ngữ khá tiện lợi:
Đơn giản hóa;
Hiệu quả;
Bảo mật cao;
Linh động;
Thân thiện.
“Hello World” Script trong PHP
Để dần làm quen với PHP, chúng ta khởi đầu với PHP script đơn giản. Chúng ta sẽ bắt đầu với ví dụ đầu tiên về PHP là “Hello, World” script.
Như đã đề cập trước đó, PHP được nhúng trong HTML. Nghĩa là, bên trong HTML bạn sẽ có thể có các lệnh PHP như sau:
<html>
<head>
<title>Vi du chuong trinh Hello World</title>
</head>
<body>
<?php echo “Hello World!”;?>
</body>
</html>
Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php sẽ cho kết quả.
Nếu bạn kiểm tra HTML output của ví dụ trên, bạn chú ý rằng PHP code không có mặt trong file được gửi từ Server tới trình duyệt web của bạn. Tất cả nội dung PHP có mặt trong trang web được xử lý từ trang đó; thứ duy nhất được trả về tới Client từ Web Server chỉ là HTML output thuần.
Tất cả PHP code phải được bao bên trong một trong 3 thẻ đánh dấu đặc biệt được nhận diện bởi PHP Parser.
<?php Trong này là phần PHP code của bạn ?>
<? Trong này là phần PHP code của bạn ?>
<script language=”php”> Trong này là phần PHP code của bạn </script>
Thẻ phổ biến nhất là <?php…?> và chúng ta cũng sẽ sử dụng cùng thẻ đó trong loạt bài này.
Đối với các website tĩnh hay là các website HTML khi người dùng yêu cầu xem một trang web thì yêu cầu đó sẽ được gửi về phía Server . Server ở đây chỉ đơn giản là gửi nội dung trang web mà người dùng muốn xem về trình duyệt cho người dùng.
Đối với các trang PHP khi có yêu cầu xem trang web thì Server sẽ tiến hành phát sinh trang web đó từ mã nguồn PHP sang mã nguồn HTML , sau đó mới chuyển mã nguồn đó về trình duyệt web để người dùng xem. Vì các trình duyệt web không thể đọc được các mã nguồn PHP mà chỉ đọc được các mã nguồn HTML.
Chương tới chúng ta sẽ đề cập đến cài đặt môi trường PHP trên máy tính và sau đó sẽ cùng thảo luận qua các khái niệm cơ bản liên quan tới PHP.
Tại sao lại chọn lập trình PHP?
Không phải ngẫu nhiên mà các trang web lớn như Yahoo, Facebook, Wikipedia, Digg, Joomla, WordPress,…lại được viết bằng PHP. Chính sự đơn giản, tính hiệu quả và linh động của PHP. Đã giúp nó trở thành ngôn ngữ phổ biến trong giới lập trình như hiện nay.
PHP sử dụng mã nguồn mở, mang lại sự linh hoạt cho các lập trình viên.
Ngôn ngữ lập trình PHP là dễ dàng kết nối tới các hệ cơ sở dữ liệu thông dụng. Bởi nó tích hợp sẵn nhiều Database Client.
PHP có thể được sử dụng trên nhiều hệ điều hành khác nhau.
Tính cộng động của PHP cũng mang lại một lợi thế cho nó. PHP được phát triển và tối ưu liên tục từ các nhà phát triển trên toàn thế giới. Khiến cho nó vô cùng thân thiện với mọi người và ngày càng hoàn thiện hơn.
PHP cũng cung cấp nhiều cơ chế hoạt động cho phép lập trình viên có thể triển khai tính bảo mật cho trang web của mình.
Cơ hội nghề nghiệp của lập trình PHP
PHP là một ngôn ngữ lập trình đem lại cơ hội việc làm rất lớn cho các lập trình viên. Bởi PHP là một ngôn ngữ lập trình mạnh mẽ trọng thời đại 4.0. Như các bạn có thể thấy ở trên các ông lớn như Facebook, Wikipedia hay WordPress cũng có sử dụng PHP. Như vậy các bạn cũng thể thấy được tầm quan trọng của PHP là rất lớn. Nó cũng là một công cụ hỗ trợ đắc lực cho các ngành thương mại điện tử. Một ngành đang rất hot hiện nay. Thêm vào đó, so với các ngôn ngữ lập trình khác PHP cũng dễ học và dễ ứng dụng hơn với các trang web.
Nếu như bạn tìm kiếm từ khóa ” việc làm PHP” trên trang google bạn sẽ nhận về hơn 42 triệu kết quả. Con số này cũng phần nào chỉ ra cơ hội việc làm của lập trình PHP. Cùng với đó hằng năng Việt Nam có hàng nghìn doanh nghiệp ra đời. Mỗi doanh nghiệp để phát triển được họ cần phải có website. Từ đó như cầu về lập trình viên cũng theo đó mà tăng cao. Tuy nhiên, kéo theo cơ hội về nghề nghiệp cao là sự cạnh tranh cao. Bởi bất cứ một ngành hot nào là có hàng nghìn hàng triệu người muốn vào ngành đó để theo học. Bởi vậy, bạn muốn có chỗ đứng trọng ngành lập trình PHP đó là bạn phải có trình độ, kinh nghiệm cao hơn đối thủ của bạn.
Các tính năng PHP
Hiệu suất: Chương trình viết bằng PHP thực thi nhanh hơn các chương trình được viết bằng các ngôn ngữ khác như JSP, ASP.
Mã nguồn mở: PHP là một ngôn ngữ lập trình mã nguồn mở, bạn có thể phát triển tất cả phiên bản PHP theo yêu cầu của mình mà không phải trả bất kỳ chi phí nào.
Nền tảng độc lập: PHP có sẵn cho hệ điều hành WINDOWS, MAC, LINUX & UNIX. Một ứng dụng PHP được phát triển trong một hệ điều hành có thể dễ dàng được thực thi trong hệ điều hành khác.
Khả năng tương thích: PHP tương thích với hầu hết các máy chủ cục bộ được sử dụng ngày nay như Apache, IIS, v.v.
Nhúng: Mã PHP có thể dễ dàng được nhúng trong các script và thẻ HTML.
Cú pháp PHP
Ví dụ PHP
1 | <!DOCTYPE> |
2 | <html> |
3 | <body> |
4 | <?php |
5 | echo “<h2>Hello PHP</h2>”; |
6 | ?> |
7 | </body> |
8 | </html> |
Kết quả:
Hello PHP
Phát triển ứng dụng Web
PHP được sử dụng rộng rãi trong phát triển web hiện nay. Với PHP bạn có thể dễ dàng phát triển các trang web động. Bên cạnh đó, bạn phải có kiến thức cơ bản về các công nghệ sau để phát triển web.
HTML;
CSS;
JavaScript;
Ajax;
XML and JSON;
jQuery.
Điều kiện tiên quyết
Trước khi học PHP, bạn phải có kiến thức cơ bản về HTML.
Công cụ lập trình PHP
Các công cụ được sử dụng trong các ví dụ và bài tập hướng dẫn lập trình PHP trên viettuts.vn:
- Apache Server bằng cách cài ứng dụng XAMPP.
- Xdebug.
- Eclipse.
Thành phần chính của PHP
MVC Architecture
PHP chủ yếu hoạt động trên mô hình kiến trúc giúp quản lý code và tách riêng các tệp Model, View,và Controller.
Nó giúp kết nối cơ sở dữ liệu rất dễ dàng và các thay đổi có thể được thực hiện rất dễ dàng mà không ảnh hưởng đến tệp hoặc mô-đun khác.
Framework
PHP có nhiều Framework khác nhau là Aura, Yii, Symfony, Laravel và Zend. Các Framework giúp mã nguồn có thể đạt được sự gọn gàng và sạch sẽ, dễ quản lý và giúp các lập trình viên làm việc dễ dàng hơn.
Web Server
PHP chủ yếu hoạt động trên phần mềm máy chủ web và được sử dụng máy chủ Apache.
Database
PHP có thể được sử dụng với bất kỳ cơ sở dữ liệu nào nhưng nó chủ yếu được sử dụng với MySQL.
PHP Parser
Parser giúp phân tích các cú pháp PHP sang mã HTML và sau đó gửi nó đến trình duyệt web để hiển thị nội dung.
Autosuggest
Trong phần giới thiệu về PHP này, các components đã sẵn sàng để sử dụng để triển khai biểu mẫu tìm kiếm với tính năng tự động đề xuất sử dụng PHP và cơ sở dữ liệu MySQL.
Fillters
Trong PHP, Bộ lọc được sử dụng để xác thực dữ liệu bằng chức năng fillter. Chức năng lọc này giúp kiểm tra đầu vào không hợp lệ đã được gửi để tránh sự cố bảo mật và các lỗi không mong muốn.
System Functions
Trong PHP, các chức năng hệ thống được thực hiện để mở tệp. Nó cũng giúp tạo, đọc và viết các tập tin rất tốt.
Handle forms
Trong PHP, các biểu mẫu được xử lý và có thể lấy dữ liệu từ các tệp, lưu dữ liệu, gửi email và trả lại dữ liệu cho người dùng.
PHP có thể mã hóa dữ liệu, truy cập và thiết lập cookie. Với sự trợ giúp của PHP, các lập trình viên cũng có thể hạn chế người dùng truy cập các trang.
Ưu điểm của PHP
Ưu điểm quan trọng nhất của PHP chính là nguồn mở và miễn phí. Nó có thể được tải xuống bất cứ nơi nào. Sẵn sàng để sử dụng cho việc phát triển các ứng dụng web.
Nó là nền tảng độc lập. Các ứng dụng dựa trên PHP có thể chạy trên mọi hệ điều hành như UNIX, Linux và Windows, v.v.
Ứng dụng dựa trên PHP có thể dễ dàng được tải và kết nối với cơ sở dữ liệu. Nó chủ yếu được sử dụng vì tốc độ tải nhanh hơn trên Internet chậm và trong nhiều trường hợp, PHP có tốc độ cao hơn với nhiều ngôn ngữ lập trình khác.
PHP là dễ học cho người mới bắt đầu, nó cũng đơn giản và dễ sử dụng. Nếu một người biết lập trình C căn bản thì có thể dễ dàng học và làm việc với PHP.
Nó ổn định hơn từ nhiều năm với sự giúp đỡ của việc cung cấp hỗ trợ liên tục cho các phiên bản khác nhau. Từ phiên bản 5 trở lên PHP đã hỗ trợ thêm các đặc tính về Lập trình hướng đối tượng OOP
Lập trình web với PHP có ưu điểm là code ngắn, cấu trúc đơn giản. Điều này cũng giúp dễ dàng quản lý mã nguồn hơn.
PHP hỗ trợ nhiều thư viện mạnh mẽ để dễ dàng mô-đun chức năng cho việc biểu diễn dữ liệu.
Các mô-đun kết nối cơ sở dữ liệu được tích hợp sẵn trong PHP. Từ đó giảm công sức và thời gian để phát triển website.
Nhược điểm của PHP
Bản thân PHP không an toàn như nhiều ngôn ngữ khác.
PHP không phù hợp cho các ứng dụng web cần xử lý nội dung lớn
PHP là kiểu Weak type nên có thể dẫn đến dữ liệu và thông tin không chính xác cho người dùng.
Sử dụng các Framework PHP cần học thêm Built-in Function (Các chức năng được tích hợp sẵn trong PHP) để tránh lại viết lại chức năng lần thứ 2.
Việc sử dụng nhiều tính năng của các Framework PHP có thể làm hiệu suất của trang web bị kém đi.
Bài viết trên đã giúp bạn giải đáp câu hỏi PHP là gì cùng những kiến thức liên quan đến PHP. Hy vọng bài viết trên có thể giúp ích được cho bạn trong công việc cũng như trong cuộc sống. Cơ hội việc làm liên quan đến PHP rất hấp dẫn, nếu thật sự đam mê hãy theo đuổi bạn nhé!