TÌM HIỂU VỀ LỊCH SỬ PHÁT TRIỂN CỦA NGÔN NGỮ LẬP TRÌNH PHP

116 2.3K 4
TÌM HIỂU VỀ LỊCH SỬ PHÁT TRIỂN CỦA NGÔN NGỮ LẬP TRÌNH PHP

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trong thời đại ngày nay, website đã phát triển như một công cụ để trao đổi thông tin, mua bán trên trên mọi lĩnh vực. Sự ra đời của các ngôn ngữ lập trình khiến cho việc thiết kế lên một website cũng không còn quá khó khăn. Có rất nhiều ngôn ngữ được sử dụng để tạo ra một trang web đáp ứng được nhu cầu của người sử dụng. PHP (Personal Home Page) là một trong số đó, là kịch bản trên phía trình chủ (Sever Scipt) cho phép chúng ta xây dựng trang web trên cơ sở dữ liệu. Với nhiều ưu điểm nổi bật mà PHP được rất nhiều người sử dụng. PHP giúp thiết kế web dễ dàng hơn, chi phí hơn, do đó sẽ tiết kiệm nhiều hơn cho việc thiết kế web so với các ngôn ngữ khác như Perl, CGI, ASP. Cùng với sự hình thành của Internet, sự ra đời và phát triển của hệ thống website đã làm cải thiện và phong phú hơn cho xã hội hiện nay. Với xu thế đó, xây dựng website trở thành một hành động “cần được xem xét” đối với lập trình viên. Khác với mô hình lập trình Desktop thông thường, lập trình trên môi trường web chủ yếu dựa vào mô hình ClientServer và giao thức HTTP để làm việc. Hiện tại, có khá nhiều ngôn ngữ cho phép chúng ta lập trình web như Java, .NET, PHP, Perl, Python, Ruby on Rails…mỗi ngôn ngữ đều có những ưu và khuyết điểm riêng. Nội dung của đề tài này sẽ đi vào một số điểm nổi bật của PHP và một số nhân tố khiến PHP ngày càng trở nên phổ biến như ngày nay. Với PHP, bạn có thể viết ra nhiều kiểu ứng dụng có mô hình tương tác khác nhau như thông qua website (HTTP Request – Response), thông qua Command Line Interface – CLI (Shell, Batch processing…), Web Service (SOAP, REST…), thông qua ứng dụng Desktop (PHPGTK)…. Giống như các công nghệ web khác, PHP là một ngôn ngữ phía Server, có nghĩa là code của bạn sẽ được triển khai và thực thi trên Server. Mới ra đời gần 15 năm nhưng PHP đã có sự phát triển nhanh chóng và chóng mặt. Có thể chỉ ra đây một số ứng dụng nổi tiếng viết bằng PHP như: Yahoo, Facebook, Wikipedia, Digg, Joomla, WordPress…Sự phổ biến của PHP trong xây dựng web đã làm cho ngày càng nhiều website triển khai bằng PHP. Một số dạng web tiêu biểu có thể viết bằng PHP là : Social Network, Message Board (Forum, Guestbook, Blog…), CMS (Content Management System), ECommerce, Multimedia (Image Gallery, Music, Video…), Web Mail, IM (Instant Message), Office tools… PHP đựa trên cú pháp của ngôn ngữ lập trình C, chính vì vậy khi làm việc với PHP bạn phải là người có kiến thức về ngôn ngữ lập trình C, C++, Visual C. Nếu bạn xây dựng ứng dụng PHP có kết nối cơ sở dữ liệu Mysql, SQL, Server hay Oracal là điều cần thiết. Khi người dùng gọi trang PHP, web Server triệu gọi PHP Engine để thông dịch trang PHP và trả kết quả cho người dùng. Với sự giúp đỡ và hướng dẫn của thầy giáo, Thạc sỹ Nguyễn Thế Bình với đề tài : “ Tìm hiểu ngôn ngữ lập trình PHP và các ứng dụng của ngôn ngữ lập trình PHP”.

MỤC LỤC LỜI MỞ ĐẦU Trong thời đại ngày nay, website phát triển công cụ để trao đổi thông tin, mua bán trên lĩnh vực Sự đời ngôn ngữ lập trình khiến cho việc thiết kế lên website không khó khăn Có nhiều ngôn ngữ sử dụng để tạo trang web đáp ứng nhu cầu người sử dụng PHP (Personal Home Page) số đó, kịch phía trình chủ (Sever Scipt) cho phép xây dựng trang web sở liệu Với nhiều ưu điểm bật mà PHP nhiều người sử dụng PHP giúp thiết kế web dễ dàng hơn, chi phí hơn, tiết kiệm nhiều cho việc thiết kế web so với ngôn ngữ khác Perl, CGI, ASP Cùng với hình thành Internet, đời phát triển hệ thống website làm cải thiện phong phú cho xã hội Với xu đó, xây dựng website trở thành hành động “cần xem xét” lập trình viên Khác với mô hình lập trình Desktop thông thường, lập trình môi trường web chủ yếu dựa vào mô hình Client-Server giao thức HTTP để làm việc Hiện tại, có nhiều ngôn ngữ cho phép lập trình web Java, NET, PHP, Perl, Python, Ruby on Rails…mỗi ngôn ngữ có ưu khuyết điểm riêng Nội dung đề tài vào số điểm bật PHP số nhân tố khiến PHP ngày trở nên phổ biến ngày Với PHP, bạn viết nhiều kiểu ứng dụng có mô hình tương tác khác thông qua website (HTTP Request – Response), thông qua Command Line Interface – CLI (Shell, Batch processing…), Web Service (SOAP, REST…), thông qua ứng dụng Desktop (PHP-GTK)… Giống công nghệ web khác, PHP ngôn ngữ phía Server, có nghĩa code bạn triển khai thực thi Server Mới đời gần 15 năm PHP có phát triển nhanh chóng chóng mặt Có thể số ứng dụng tiếng viết PHP như: Yahoo, Facebook, Wikipedia, Digg, Joomla, WordPress…Sự phổ biến PHP xây dựng web làm cho ngày nhiều website triển khai PHP Một số dạng web tiêu biểu viết PHP : Social Network, Message Board (Forum, Guestbook, Blog…), CMS (Content Management System), E2 Commerce, Multimedia (Image Gallery, Music, Video…), Web Mail, IM (Instant Message), Office tools… PHP đựa cú pháp ngôn ngữ lập trình C, làm việc với PHP bạn phải người có kiến thức ngôn ngữ lập trình C, C++, Visual C Nếu bạn xây dựng ứng dụng PHP có kết nối sở liệu Mysql, SQL, Server hay Oracal điều cần thiết Khi người dùng gọi trang PHP, web Server triệu gọi PHP Engine để thông dịch trang PHP trả kết cho người dùng Với giúp đỡ hướng dẫn thầy giáo, Thạc sỹ Nguyễn Thế Bình với đề tài : “ Tìm hiểu ngôn ngữ lập trình PHP ứng dụng ngôn ngữ lập trình PHP” CHƯƠNG I: TÌM HIỂU VỀ LỊCH SỬ PHÁT TRIỂN CỦA NGÔN NGỮ LẬP TRÌNH PHP 1.1 Những khái niệm ngôn ngữ PHP a Khái niệm HTML: - HTML (HyperText Markup Language) ngôn ngữ để xây dựng trang web, mô tả cách thức trang web hiển thị trình duyệt HTML ngôn ngữ mô tả tài liệu, hình thành từ ngôn ngữ mô tả tổng quát SGML (Standard Generalized Markup Language) hãng IBM đề xướng từ năm 1960 HTML ngôn ngữ lập trình, cung cấp thị định dạng để phục vụ cho việc trình bày văn đối tượng khác hình ảnh, video, plug in… - Là ngôn ngữ đánh dấu thiết kế để tạo nên trang web với mẩu thông tin trình bày World Wide Web HTML định nghĩa ứng dụng đơn giản SGML sử dụng tổ chức cần đến yêu cầu xuất phức tạp HTML trở thành chuẩn Internet tổ chức World Wide Web Consortium (W3C) trì Phiên thức HTML HTML 4.01 (1999) Sau đó, nhà phát triển thay XHTML Hiện nay, HTML phát triển tiếp với phiên HTML5 hứa hẹn mang lại diện mạo cho Web Bằng cách dùng HTML động Ajax, lập trình viên tạo xử lý số lượng lớn công cụ, từ chương trình soạn thảo văn đơn giản – gõ vào từ dòng – công cụ xuất WYSIWYG phức tạp - HTML ngôn ngữ lập trình, ngôn ngữ trình bày b Khái niệm PHP: - PHP (viết tắt hồi qui: Hypertext Preprocessor) ngôn ngữ lập trình mã nguồn mở thiết kế để làm việc web - PHP ngôn ngữ lập trình kiểu script, chạy Server trả mã HTML cho trình duyệt Ví dụ : Example - Mã PHP đặt kiểu tag dặc biệt cho phép ta vào khỏi chế độ PHP 1.2 Lịch sử phát triển ngôn ngữ PHP: a PHP/FI: - PHP phát triển từ sản phẩm có tên PHP/FI PHP/FI Rasmus Lerdof tạo năm 1995, ban đầu xem tập đơn giản mã kịch Perl để theo dõi tình hình truy cập đến sơ yếu lý lịch ông mạng Ông đặt tên cho mã kịch 'Personal Home Page Tools' Khi cần đến chức rộng hơn, Rasmus viết thực thi C lớn để truy vấn tới sở liệu giúp cho người sử dụng phát triển ứng dụng web đơn giản Rasmus định công bố mã nguồn PHP/FI cho người xem, sử dụng sửa lỗi có đồng thời cải tiến mã nguồn - PHP/FI, viết tắt từ "Personal Home Page/Forms Interpreter", bao gồm số chức cho PHP ta biết đến chúng ngày Nó có biến kiểu Perl, thông dịch tự động biến form cú pháp HTML nhúng Cú pháp giống Perl, hạn chế nhiều, đơn giản có phần thiếu quán - Vào năm 1997, PHP/FI 2.0, lần viết lại thứ hai phiên C, thu hút hàng ngàn người sử dụng toàn giới với xấp xỉ 50.000 tên miền ghi nhận có cài đặt nó, chiếm khoảng 1% số tên miền có mạng Internet Tuy có tới hàng nghìn người tham gia đóng góp vào việc tu chỉnh mã nguồn dự án vào thời chủ yếu dự án người - PHP/FI 2.0 thức công bố vào tháng 11 năm 1997, sau thời gian dài công bố dạng beta Nhưng không lâu sau đó, thay alpha PHP 3.0 b PHP 3: - PHP 3.0 phiên cho thấy hình ảnh gần gũi với phiên PHP mà biết ngày Nó Andi Gutmans Zeev Suraski tạo năm 1997 sau viết lại hoàn toàn mã nguồn trước Lý mà họ tạo phiên họ nhận thấy PHP/FI 2.0 yếu việc phát triển ứng dụng thương mại điện tử mà họ xúc tiến dự án trường đại học Trong nỗ lực hợp tác bắt đầu xây dựng dựa sở người dùng có PHP/FI, Andi, Rasmus Zeev định hợp tác công bố PHP 3.0 phiên hệ PHP/FI 2.0, chấm dứt phát triển PHP/FI 2.0 - Một sức mạnh lớn PHP 3.0 tính mở rộng mạnh mẽ Ngoài khả cung cấp cho người dùng cuối sở hạ tầng chặt chẽ dùng cho nhiều sở liệu, giao thức API khác nhau, tính mở rộng PHP 3.0 thu hút nhiều nhà phát triển tham gia đề xuất mô đun mở rộng Hoàn toàn kết luận điểm mấu chốt dẫn đến thành công vang dội PHP 3.0 Các tính khác giới thiệu PHP 3.0 gồm có hỗ trợ cú pháp hướng đối tượng nhiều cú pháp ngôn ngữ quán khác - Ngôn ngữ hoàn toàn công bố tên mới, xóa bỏ mối liên hệ với việc sử dụng vào mục đích cá nhân hạn hẹp mà tên PHP/FI 2.0 gợi nhắc Nó đặt tên ngắn gọn 'PHP', kiểu viết tắt hồi quy "PHP: Hypertext Preprocessor" - Vào cuối năm 1998, PHP phát triển số cài đặt lên tới hàng chục ngàn người sử dụng hàng chục ngàn Web site báo cáo cài Vào thời kì đỉnh cao, PHP 3.0 cài đặt cho xấp xỉ 10% số máy chủ Web có mạng Internet - PHP 3.0 thức công bố vào tháng năm 1998, sau thời gian tháng cộng đồng kiểm nghiệm c PHP 4: - Vào mùa đông năm 1998, sau PHP 3.0 thức công bố, Andi Gutmans Zeev Suraski bắt đầu bắt tay vào việc viết lại phần lõi PHP Mục đích thiết kế nhằm cải tiến tốc độ xử lý ứng dụng phức tạp, cải tiến tính mô đun sở mã PHP Những ứng dụng chạy PHP 3.0 dựa tính hỗ trợ nhiều sở liệu API bên thứ ba, PHP 3.0 không thiết kế để xử lý ứng dụng phức tạp cách có hiệu - Một động mới, có tên 'Zend Engine' (ghép từ chữ đầu tên Zeev Andi), đáp ứng nhu cầu thiết kế cách thành công, lần giới thiệu vào năm 1999 PHP 4.0, dựa động này, kèm với hàng loạt tính bổ sung, thức công bố vào tháng năm 2000, gần năm sau PHP 3.0 đời Ngoài tốc độ xử lý cải thiện nhiều, PHP 4.0 đem đến tính chủ yếu khác gồm có hỗ trợ nhiều máy chủ Web hơn, hỗ trợ phiên làm việc HTTP, tạo đệm thông tin đầu ra, nhiều cách xử lý thông tin người sử dụng nhập vào bảo mật cung cấp vài cấu trúc ngôn ngữ - Với PHP 4, số nhà phát triển dùng PHP lên đến hàng trăm nghìn hàng triệu site công bố cài đặt PHP, chiếm khoảng 20% số tên miền mạng Internet - Nhóm phát triển PHP lên tới số hàng nghìn người nhiều nghìn người khác tham gia vào dự án có liên quan đến PHP PEAR, PECL tài liệu kĩ thuật cho PHP d PHP 5: - Sự thành công to lớn PHP 4.0 không làm cho nhóm phát triển PHP tự mãn Cộng đồng PHP nhanh chóng giúp họ nhận yếu PHP đặc biệt với khả hỗ trợ lập trình hướng đối tượng (OOP), xử lý XML, không hỗ trợ giao thức máy khách MySQL 4.1 5.0, hỗ trợ dịch vụ web yếu Những điểm mục đích để Zeev Andi viết Zend Engine 2.0, lõi PHP 5.0 Một thảo luận Slashdot cho thấy việc phát triển PHP 5.0 bắt đầu vào thời điểm tháng 12 năm 2002 vấn Zeev liên quan đến phiên có mặt mạng Internet vào khoảng tháng năm 2002 Ngày 29 tháng năm 2003, PHP Beta thức công bố để cộng đồng kiểm nghiệm Đó phiên Zend Engine 2.0 Phiên Beta sau mắt vào tháng 10 năm 2003 với xuất hai tính chờ đợi: Iterators, Reflection namespaces tính gây tranh cãi khác bị loại khỏi mã nguồn Ngày 21 tháng 12 năm 2003: PHP Beta công bố để kiểm tra với việc phân phối kèm với Tidy, bỏ hỗ trợ Windows 95, khả gọi hàm PHP bên XSLT, sửa chữa nhiều lỗi thêm nhiều hàm PHP thức mắt ngày 13 tháng năm 2004 sau chuỗi dài kiểm tra thử bao gồm Beta 4, RC 1, RC2, RC3 Mặc dù coi phiên sản xuất PHP 5.0 số lỗi đáng kể lỗi xác thực HTTP - Ngày 14 tháng năm 2005, PHP 5.1 Beta PHP Team công bố đánh dấu chín muồi PHP với có mặt PDO, nỗ lực việc tạo hệ thống API quán việc truy cập sở liệu thực câu truy vấn Ngoài ra, PHP 5.1, nhà phát triển PHP tiếp tục có cải tiến nhân Zend Engine 2, nâng cấp mô đun PCRE lên PCRE 5.0 tính cải tiến SOAP, streams SPL e PHP 6: - Hiện phiên PHP phát triển, PHP sử dụng thử download địa http://snaps.php.net Phiên PHP kỳ vọng lấp đầy khiếm khuyết PHP phiên tại, ví dụ: hỗ trợ namespace (hiện nhà phát triển chưa công bố rõ ràng vấn đề này); hỗ trợ Unicode; sử dụng PDO làm API chuẩn cho việc truy cập sở liệu, API cũ bị đưa thành thư viện PECL 1.3 Một số ưu, nhược điểm ngôn ngữ PHP a Ưu điểm: Theo báo cáo việc sử dụng ngôn ngữ PHP tháng năm 2006 Netcraft 20 triệu tên miền trang web sử dụng ngôn ngữ PHP TIOBE xuất mục lục thị cộng đồng lập trình cộng đồng phát triển web phát triển nhiều ngôn ngữ Chỉ mục cho thấy xét tính phổ biến ngôn ngữ PHP đứng thứ số ngôn ngữ nhà phát triển web sử dụng, lên hạng từ vị trí thứ thời điểm năm 2005 Vì ngôn ngữ PHP rõ ràng ngày sử dụng nhiều với PHP 5.0 lại nhận ủng hộ từ nhà phát triển web người sử dụng cuối Không có dấu hiệu cho thấy ngôn ngữ xuống dốc Một số ưu điểm ngôn ngữ PHP: - Mã nguồn mở Như bạn biết PHP sản phẩm mã nguồn mở (Open-source) nên việc cài đặt tùy biến PHP miễn phí tự Vì có ưu nguồn mở nên PHP cài đặt hầu hết Web Server thông dụng Apache, IIS… - Tính Cộng đồng PHP Là ngôn ngữ mã nguồn mở cộng với phát triển phổ biến PHP cộng đồng PHP coi lớn có chất lượng Với cộng đồng phát triển lớn, việc cập nhật phiên lỗi phiên thử nghiệm phiên khiến cho PHP linh hoạt việc hoàn thiện Cộng đồng hỗ trợ, chia sẻ kinh nghiệm PHP dồi Với nhiều diễn đàn, blog nước nói PHP khiến cho trình tiếp cận người tìm hiểu PHP rút ngắn nhanh chóng 10 • Hỗ trợ Hooks, lớp ngoại (Class Extensions), Plugins + Trong số mô hình framework MVC khác, CodeIgniter có ưu điểm sau : • Tương thích hoàn toàn với PHP Nếu sử dụng PHP dùng tính hữu ích khác khả gọi phương thức dây chuyền (method chaining ability) • Mô hình code nhẹ cho hệ thống, cải thiện tốc độ thực thi • Đơn giản việc cài đặt, cấu hình cấu trúc thư mục • Error Logging • Mêm dẻo việc định tuyến URI (URI Routing) + Framework tích hợp thêm vào số lớp thư viện khác mà framework khác chưa mặc định tích hợp: • Bảo mật XSS Filtering • Gửi Email, hỗ trợ đính kèm, HTML/Text email, đa giao thức(sendmail, SMTP, and Mail) thứ khác • Thư viện chỉnh sửa ảnh (cắt ảnh, thay đổi kích thước, xoay ảnh, v.v ) Hỗ trợ GD, ImageMagick, NetPBM • Upload file • FTP Class - Tương tác với máy chủ thông qua giao thức FTP • Localization 102 • Phân trang tự động • Mã hóa liệu - Data Encryption • Đo lường tốc độ thực thi - Benchmarking • Application Profiling • Lịch - Calendaring Class • User Agent Class • Nén - Zip Encoding Class • Trackback Class • XML-RPC Library • Unit Testing Class • Search-engine Friendly URLs • Một lượng lớn hàm hỗ trợ (helpers) 4.10 a Zend framework Thông tin Zend Framework PHP Framework đuợc lập trình PHP dựa theo mô hình MVC(Model View Controller)sẽ giúp bạn tách bạch phần xử lý riêng biệt cho website bạn, giúp cho code bạn sáng hơn, dễ quản lý, chỉnh sửa nâng cấp Zend framework: 103      Sử dụng PHP Viết huớng đối tuợng Cung cấp mô hình tiên tiến MVC Là phần mềm nguồn mở có hỗ trợ cộng đồng Cung cấp loạt ứng dụng API nhà cung cấp hàng đầu Google, Yahoo, Flick Tính b + Tạo ứng dụng web theo mô hình chuẩn MVC + Url tiêu chuẩn, ngắn gọn + Hỗ trợ phân quyền tới Action + Có thành phần thư viên hỗ trợ API nhà cung cấp Google, Yahoo, Flick + Quản lý code dễ dàng, liệt kê lấy truy vấn history + Dễ dàng phát triển thêm ứng dụng nhúng, sử dụng Plugins Tài liệu: www.framework.zend.com CHƯƠNG V: SỰ HƯỞNG ỨNG PHP Ở VIỆT NAM VÀ ĐÓNG GÓP CỦA NGƯỜI VIỆT ĐỐI VỚI PHP THẾ GIỚI 5.1 Sự hưởng ứng PHP Việt Nam Mặc dù PHP coi sẵn sàng cho doanh nghiệp chấp nhận PHP tiến triển chậm chạp đặc biệt Việt Nam Nhưng nỗ 104 lực để phổ biến PHP có dự án xây dựng Quy tắc viết mã PHP tiếng Việt xúc tiến Ngày 24 tháng 10 năm 2004, nhóm PHPVietnam đề xuất xây dựng PHPVietnam Mailing List Google Groups địa chỉ: http://groups-beta.google.com/group/phpvietnam Tại diễn thảo luận để xây dựng diễn đàn cho cộng đồng PHP Việt Nam Từ năm 2008 đến nay, thành viên yêu thích PHP Việt Nam tổ chức ngày hội dành riêng cho lập trình PHP gọi PHP “Day” với mục tiêu tạo dựng cộng đồng hội hợp tác cho cá nhân, tổ chức hoạt động lĩnh vực sản xuất, nghiên cứu, kinh doanh Phần mềm Nguồn Mở tự Ngày hội Nguồn mở - PHPDAY cầu nối để phát triển cộng đồng Lập trình viên Nguồn Mở ngày đông đảo lớn mạnh Chương trình dã thu hút quan tâm nhiều đối tượng, từ cá nhân đến tập thể làm việc lĩnh vực CNTT ủng hộ Không tài trợ, tớ tham dự mà tham gia đóp topic ý nghĩ cho cộng đồng Nguồn mở Việt Nam, với người theo đuổi PHP a Hà Nội PHP Day 2008: chủ đề - Công ty Vega Corporation: Phạm Cộng Đình - Topic “Your own Franework” - Freelancer: Đặng Minh Tuấn - Topic “The good, the best, the ugly – CSS” - Công ty V.E.X.T: Nguyễn Đức Phú - Topic “ News Collector System (Crawler)” - Digital Experts: Phan Thái Trung - Topic "Drupal Overview" 105 - b Vega Corp: ByHuy.com - Topic “RESTful PHP Web Services” Hà Nội PHP Day 2009: 10 chủ đề - Vega: Phạm Công Định - Topic “Beyond relational Database-High performancedatastore and PHP client” - eXo Platform: Phạm Văn Hoạt - Topic “Advanced javaScript Techniques” - Ha noi Aptech: Đặng Minh Tuấn - Topic “HTML5 & CSS” - Đại học Xây Dựng: Phan Thái Trung - Topic “Cloud Database & Web Server” - Socbay: Nguyễn Mạnh Chính - Topic “MySQL Optimization” - VCCorp: Hồng Minh - Topic “JavaScirpt Animation Engine” - AiTi Aptech: Bùi Đình Ngọc - Topic “PHPAMF – RIA Client & PHP Sever Slide” - VinaGame: Đào Hải Long - Topic “Zing.vn – Challenges & Solutions” - iWay Vietnam: Nguyễn Mạnh Tiến - Topic “FOSS Contribution" - eXo Platfom: Nguyễn Đình Tâm - Topic “Entity – Attribute – Value in Magento” c Hà Nội PHP Day 2010: 12 chủ đề - Zingme practice for building scalable website with PHP 106 - Speed up zing me – ntvv2 code with php extension module - Build your own PHP extension - Kiếm tiền online chân nghề lập trình - Html5, css3 and the future of web technologies - Xây dựng mạng xã hội drupal - Building joomla! extensions with flex integration - Javascript unit testing framework - Social network game service - Magento overview and how sell Magento extensions - Web optimization - How startups can benefit from launch community d Hà Nội PHP Day 2011: 14 chủ đề - Implementation of Realtime Communication Platform in Zing Me: Web Chat and Notification System - Châu Nguyễn Nhật Thanh – VNG - Công nghệ PHP phát triển Mobile Services - Ngô Xuân Lộc - CNC Mobile - Responsive Design - Lê Phan Đức Trọng – Joomlart - Quercus - PHP in Java - Bùi Đình Ngọc - Aiti-aptech 107 - Build Web Application with HTML5 - Đoàn Văn Tuyên - SETA International - Tích hợp trao đổi liệu với FaceBook - Nguyễn Mạnh Tiến - tamtay.vn - Zing Me Configuration Center architecture - Nguyễn Quang Nam – VNG - Xây dựng tổng đài VoIP với Asterisk FreePBX (built PHP) Phan Nguyễn Bá Nguyên – Iway - Continuous integration and PHP - improve your development process Lại Trung Hiếu – eXo - Securing the Apache server with some Major Areas To Be Aware Of Nguyễn Vạn Phúc – SAITM - E-commerce and Groupon-like with Magento - Nguyễn Vũ Hưng – HanoiLUG - Xây dựng phát triển ứng dụng Web tảng mã nguồn mở NukeViet - Nguyễn Thế Hùng – NukeViet - Thiết kế hệ thống hiệu suất cao kinh nghiệm Peacesoft - Nguyễn Hữu Tuất – Peacesoft - e Engine thơ máy v2.1 - Làm thơ PHP - Hoàng Trọng Linh - Tinh Vân Hà Nội PHP Day 2012: 16 chủ đề - Công ty CP VNG: Châu Nguyễn Nhật Thanh - Building ZingMe news feed system 108 - Công ty CP AI&T: Nguyễn Minh Tuấn - Làm game animation HTML5/CSS3 - Công ty SETA International: Trịnh Văn Thành - Build Facebook's Application by PHP - Công ty CP Giải pháp Phần mềm Hòa Bình: Giang Thiên Phú – Lập trình viên PHP - Chúng ta đâu làm công nghệ giới - Trường Đào tạo Lập trình viên Quốc tế AiTi – Aptech: Bùi Đình Ngọc Sử dụng dịch vụ crawler parser PHP - Công ty Geekpolis: Tom Trần - Drupal Enterprise: Reduce Total Cost of Ownership of Web Solutions - Bộ KH CN: Lê Trung Nghĩa - Hệ thống giấy phép phần mềm tự nguồn mở tư liệu mở - Hoctudau.com: Đặng Minh Tuấn - Power your PHP skill - Đại học Xây dựng: Phan Thái Trung - Máy chủ web bỏ túi & ứng dụng (Pocket sized web server & applications) - Công ty Cổ phần Tamtay: Bùi Ngọc Sơn - số ứng dụng Redis, NoSQL MXH Tamtay.vn - Công ty Geekpolis: Đỗ Mạnh Hùng - Rapid Web Development with Drupal Special Weapons - Công ty CỐC CỐC: Nikita groshin – Dependency injection with PHP 109 - Công ty OSS Ngô Văn Trung - Xây dựng website bán hàng trực tuyến Magento - Công ty TNHH Giải Pháp J.O.O.M: Lê Phan Đức Trọng - Twitter Bootstrap LESS - Công ty CP tập đoàn HiPT: Đoàn Văn Tuyền - Giải pháp xây dựng đám mây riêng cho doanh nghiệp vừa nhỏ - Công ty CP giải pháp thông tin Iway: Nguyễn Hà Dương - Mozilla vai trò với Open Web 5.2 Đóng góp người Việt với cộng đồng PHP giới Người Việt chưa đóng góp nhiều Chủ yếu tham gia người Việt thông qua việc dịch tập tin ngôn ngữ dựa ứng dụng PHP sẵn có với sửa đổi để tạo nên hệ thống thông tin Việt NukeViet nhóm NukeViet (sau nhóm tiếp tục phát triển trở thành phần mềm nguồn mở gốc Việt 100% ngày phát triển mạnh thời gian gần đây, số trường hợp đặc biệt sản phẩm dựa PHP) Đóng góp lớn ghi nhận đến xuất PHP Designer 2006 Michael Pham (quốc tịch Việt Nam Đan Mạch) xây dựng phpDesigner - The All-in-one Wonder cho nhà phát triển Web! phpDesigner công cụ fantasitc cho người bắt đầu phát triển trung bình, công cụ tuyệt vời cho phát triển web chuyên nghiệp Mới bắt đầu trung bình coder hỗ trợ với đề xuất mã, kiểm tra cú pháp 110 trực tiếp hoàn thành tự động, chuyên gia giúp đỡ mạnh mẽ với người quản lý dự án, trình duyệt mã, gỡ rối, hỗ trợ hướng đối tượng mở rộng, TortoiseSVN nhiều Đá quý khác tích hợp tuyệt vời phpDocumentor với thuật sĩ, cho phép bạn tạo tài liệu cho phần mềm bạn on-the-fly Nếu bạn phát triển ứng dụng doanh nghiệp với hàng trăm tập tin, bạn biết làm tốn thời gian để tạo tài liệu hướng dẫn Với phpDesigner vấn đề vài cú click chuột (gần như) tất thực tự động! phpDesigner xây dựng cách linh hoạt, mà bạn tùy chỉnh tất thứ theo ý thích bạn Mặc dù coi IDE PHP, hỗ trợ nhiều PHP Không có vấn đề bạn tạo trang web tĩnh dựa XHTML, CSS Javascript bạn tạo trang web động Perl hay Ruby hay Python hay, tất nhiên, PHP, phpDesigner tất cả-trong-một điều kỳ diệu Đừng nhìn phpDesigner IDE, dao quân đội Thụy Sĩ cho Web Developer! Nếu bạn tìm kiếm IDE mạnh mẽ giá rẻ, cung cấp cho phần mềm hội Bạn không hối tiếc! Tôi người tự làm việc chuyên nghiệp phát triển Web 10 năm thử nghiệm có lẽ PHP IDE có cho công việc hàng ngày tôi, thấy bị mắc kẹt với phpDesigner vài năm qua ý định để thay đổi điều tương lai gần Vì vậy, phpDesigner đủ để đáp ứng yêu cầu chuyên môn IDE, tốt cho nhu cầu bạn Ngoài có nhiều mã nguồn mở viết PHP người Việt Nam sử dụng nhiều, chẳng hạn mã nguồn Xtremedia hệ thống web giải trí gọi tắt "web nhạc", tác giả Lê Thanh Minh Quân (biệt danh mạng redphoenix89) viết phát triển Nó ưa chuộng mã nguồn đơn giản, giao diện bắt mắt, tốc độ nhanh, dung lượng nhẹ (file nén toàn source có 111 112kb - 1.1) đặc biệt hoàn toàn miễn phí Nhưng kèm theo nhiều lỗi chưa sửa Một số mã nguồn khác SosoVN tác giả Nguyễn Tôn Viễn, hay RCMS Nguyễn Thanh Giang An dạng CMS, nhiên CMS phát hành thương mại phát triển & sử dụng Cộng đồng người Việt cho đời nhiều script miễn phí PHP để giúp phát triển PHP Việt Nam 112 Kết Luận - Như nhiều bạn lập trình viên có khả học nhiều ngôn ngữ lập trình nói chung ngôn ngữ lập trình web nói riêng việc biết PHP có lẽ chưa “thỏa mãn” Biết ngôn ngữ chưa ít, bạn tâm đào sâu ngôn ngữ có tầng khác để khám phá Không sợ học hết, sợ học không mà thôi! - Nói phải nói lại, biết PHP thật bạn khó có khả triển khai website Bởi hệ thống website, Coding PHP mảng nhỏ khâu sản xuất web mà Bạn cần phải trang bị số kiến thức khác công nghệ web : HTML, CSS, Javascript, SEO, UML, Database, Networking…để đảm bảo bạn nắm xảy trình làm web có ích cho bạn triển khai PHP - Như có nghĩa học lập trình web bạn phải vừa học theo chiều sâu học theo chiều rộng Ngôn ngữ lập trình web phía Server (PHP) học sâu tốt công nghệ web tìm hiểu rộng tốt Có bạn có nhìn toàn diện ứng dụng web dễ dàng hoàn thiện website - Để học tập nghiên cứu PHP triển khai môi trường để tiến hành dễ Bạn cài ứng dụng đầy đủ để tạo mô hình Client-Server máy để học (AppServ, WAMP, XAMPP…) - Hiện nay,”Ngành phần mềm 'khát' lập trình viên PHP” PHP chiếm 70% số lượng website dẫn đến nguồn cộng đồng hỗ trợ PHP mạnh mẽ Chúng ta dễ dàng tìm thấy giải pháp gặp phải khó khăn liên 113 quan tới PHP Điều khiến cho việc học tập, nghiên cứu phát triển ứng dụng web trở nên đơn giản Với nguồn cộng đồng mạnh mẽ, sản phẩm phát triển từ PHP đa dạng phong phú, điều đặc biệt đa phần miễn phí ví dụ hệ CMS có Joomla, Drupal,… E-Commerce có OSCommerce, Magento,… Framework có CodeIgniter, Zend Framework, Symfony,… Như nguồn tài liệu vô giá cho việc học tập, rèn luyện PHP Bên cạnh đó, nhờ nguồn cộng đồng hỗ trợ lớn mạnh, việc cập nhật vá lỗi cho phần “cốt lỗi” (core) PHP sản phẩm làm từ PHP nhanh chóng linh hoạt việc hoàn thiện PHP,nên PHP làm hướng lựa chọn tốt cho Mặc dù PHP dễ học, dễ viết ứng dụng đủ tiêu chuẩn để thực làm tốt PHP Ngành PHP Việt Nam cần người tài lĩnh vực Với việc ngày có nhiều ứng dụng lớn viết PHP, đa dạng ứng dụng Framework làm cho thị trường tương lai dành cho bạn yêu thích PHP lớn Ngoài ra, bạn thử sức với chứng ZCE Zend lĩnh vực PHP Rất nhiều công ty chọn PHP làm ngôn ngữ phát triển website cho khách hàng sản phẩm riêng họ nên việc hiểu biết chuyên sâu công nghệ web nói chung chuyên sâu PHP nói riêng lợi lớn cho bạn - Qua đề tài: “Tìm hiểu Ngôn ngữ lập trình PHP ứng dụng ngôn ngữ lập trình PHP”, nắm tảng, sở ban đầu để hỗ trợ thêm cho việc thiết kế website Biết lại nên sử dụng ngôn ngữ PHP cho việc thiết kế web 114 - Để hoàn thành đề tài: “Tìm hiểu Ngôn ngữ lập trình PHP ứng dụng ngôn ngữ lập trình PHP” Chúng em xin chân thành cảm ơn hướng dẫn, bảo nhiệt tình giáo viên hướng dẫn, Thạc sỹ Nguyễn Thế Bình Mặc dù đề tài tìm hiểu chúng em hi vọng tìm hiểu sâu ngôn ngữ PHP nhằm phục vụ cho việc học tập công việc sau Tài liệu tham khảo: • Các trang web hướng dẫn lập trình PHP http://groups-beta.google.com/group/phpvietnam www.phpvn.org/ -InternetGiáo trình PHP từ WWW.HUUKHANG.COM Bảng phân công công việc • Nguyễn Khánh Linh: Lời mở đầu + Chương I + Chương II 115 • Phạm Thị Loan: Chương III • Bùi Quang Lợi: Chương III + Tổng kết tập • Lê Thị Nga: Chương IV + VI • Đỗ Ngọc Linh: Chương V + Kết luận 116 [...]... Extension của PHP để phù hợp với hệ cơ sở dữ liệu mà PHP sẽ làm việc Một số hệ cơ sở dữ liệu thông dụng mà PHP có thể làm việc là: MySQL, MS SQL, Oracle, Cassandra… - Lập trình hướng đối tượng Ngày nay, khái niệm lập trình hướng đối tượng (OOP) đã không còn xa lạ với lập trình viên Với khả năng và lợi ích của mô hình lập trình này nên nhiều ngôn ngữ đã triển khai để hỗ trợ OOP Từ phiên bản PHP 5, PHP đã có... Nhưng điều này không có nghĩa là PHP dành cho những website có ít người sử dụng, rất nhiều website có hàng triệu người sử dụng hàng ngày làm trên PHP c Ngôn ngữ lập trình, nhân lực phát triển: - ASP.Net, nói chính xác hơn là C# hay VB.Net, là ngôn ngữ lập trình hướng đối tuợng được thiết kế tốt, thừa hưởng rất nhiều thế mạnh của Java ASP.Net cũng có bộ công cụ phát triển hạng nhất: Visual Studio.Net... một quá trình - PHP là một ngôn ngữ được sinh ra với mục đích duy nhất là để dùng lập trình Web: giản dị và dễ hiểu Mãi đến PHP 5, lập trình hướng đối tượng mới được đưa vào tương đối đầy đủ Công cụ phát triển (IDE) cho PHP không có cái nào sánh được VS nhưng hiện nay nếu dùng Eclipse plug-in cũng có thể nói đạt 8/10 (theo sở thích riêng thì tôi ưa dùng Eclipse hơn VS) - Một vấn đề nữa là PHP thường... phục vụ cho các mục đích mở rộng website của mình b Nhược điểm: - Trong những năm qua, PHP có tính phổ biến và sức ảnh hưởng rộng rãi với các chủ website chưa có kinh nghiệm Do đó các ứng dụng được mã hóa bằng ngôn ngữ PHP trở thành mục tiêu của những kẻ phạm tội máy tính (hacker) Những nguy hại này được phóng đại lên do tính phổ biến của ngôn ngữ PHP khi phát 12 triển hiện ra những nguy hại này lan nhanh... bật của lập trình hướng đối tượng như là Inheritance, Abstraction, Encapsulation, Polymorphism, Interface, Autoload… Với việc ngày càng có nhiều Framework và ứng dụng PHP viết 11 bằng mô hình OOP nên lập trình viên tiếp cận và mở rộng các ứng dụng này trở nên dễ dàng và nhanh chóng - Tính bảo mật Bản thân PHP là mã nguồn mỡ và cộng đồng phát triển rất tích cực nên có thể nói PHP khá là an toàn PHP. .. công DOS, những sell PHP, download những khám phá và thực hiện mưu đồ mã hóa hiểm ác từ máy chủ của bạn mà có thể đã tương đối bảo mật Bản chất lí thú và tách rời sự phát triển với PHP mà hoạt động rất tốt là lí do tương tự để PHP trở thành công cụ phổ biến cho mục đích xấu - Việc cài đặt mặc định của PHP thì khá độc lập và có thể sử dụng một vài ứng dụng tweaking để bảo mật Tuy nhiên PHP chỉ thực sự đưa... truy cập, ở đây nói về độ phức tạp của các dịch vụ, 23 độ tin cậy, tính khả chuyển… những tiêu chuẩn mà chỉ khi thiết kế các ứng dụng phục vụ cho các tập đoàn lớn thì chúng ta mới đụng tới Tuy nhiên đi kèm với nó cũng là sự phức tạp và tốn kém tài nguyên - PHP rất thích hợp hơn cho những nhóm phát triển nhỏ, cho cách phát triển kiểu agile, nghĩa là có thời gian phát triển và đưa vào sử dụng nhanh Nhưng... chuối để định nghĩa test là method của một lớp cần định nghĩa: def test(self) + Hỗ trợ code trên nhiều dòng (với Python phải thêm dấu \ vào cuối dòng nếu muốn) - Python: + Ngôn ngữ sử dụng với các mục đích chung (Python có thể dùng để lập trình hầu hết mọi thứ, trong khi PHP chỉ dùng để lập trình web hay console Tất nhiên có thể làm được việc khác nhưng không đáng kể) + Sử dụng indentation (thụt vào đầu... khóa của PHP Trong PHP để sử dụng 1 biến chúng ta thường phải khai báo trước, tuy nhiên đối với các lập trình viên khi sử dụng họ thường xử lý cùng một lúc các công việc, nghĩa là vừa khái báo vừa gán dữ liệu cho biến Bản thân biến cũng có thể gãn cho các kiểu dữ liệu khác Và tùy theo ý định của người lập trình mong muốn trên chúng Xuất phát từ những điều ở trên, khai báo biến trong PHP như sau: 􀂙 $variablename... lại thành : cfg['Servers'][$i]['host'] = '127.0.0.1'; Sau đó là các bạn có thể truy cập vào phpMyAdmin bình thường 22 CHƯƠNG II: SO SÁNH NGÔN NGỮ PHP VÀ MỘT SỐ NGÔN NGỮ KHÁC 2.1 So sánh PHP và ASP.Net: Để so sánh PHP với ASP.NET ở trên diện rộng hơn chúng ta nên so sánh giải pháp LAMP (Linux + Apache + MySQL + PHP hay Python) với ASP.Net + SQL Server (hay Oracle) Dĩ nhiên mọi so sánh đều không thể toàn

Ngày đăng: 18/05/2016, 14:37

Từ khóa liên quan

Mục lục

  • LỜI MỞ ĐẦU

  • CHƯƠNG I: TÌM HIỂU VỀ LỊCH SỬ PHÁT TRIỂN CỦA NGÔN NGỮ LẬP TRÌNH PHP

    • 1.1 Những khái niệm cơ bản về ngôn ngữ PHP

    • 1.2 Lịch sử phát triển của ngôn ngữ PHP:

    • 1.3 Một số ưu, nhược điểm của ngôn ngữ PHP

    • 1.4 Appserv Network

    • CHƯƠNG II: SO SÁNH NGÔN NGỮ PHP VÀ MỘT SỐ NGÔN NGỮ KHÁC

      • 2.1 So sánh PHP và ASP.Net:

      • 2.2 So sánh PHP và Python

      • 2.3 So sánh PHP và HTML:

      • CHƯƠNG III: CÚ PHÁP TRONG PHP

        • 3.1 Cấu trúc cơ bản

        • 3.2 Xuất giá trị ra trình duyệt:

        • 3.3 Biến

        • 3.4 Hằng.

        • 3.5 Chuỗi

        • 3.6 Kiểu dữ liệu

        • 3.7 Phép toán trong PHP

        • 3.8 Phát biểu có điều kiện

        • 3.9 Làm việc với mảng dữ liệu

        • 3.10 Kiểu Datetime

        • CHƯƠNG IV: CÁC ỨNG DỤNG CỦA NGÔN NGỮ LẬP TRÌNH PHP

          • 4.1 PHP-Nuke

          • 4.2 NukeViet

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan