Lập trình PHP là một trong những lập trình phổ biến trong ngành công nghệ thông tin hiện nay.PHP là một ngôn ngữ lập trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. Nó rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML.
BÀI GIẢNG: PHP (Hypertext Preprocessing) Biên soạn: Nguyễn Phú Quảng Bộ mơn: Tin học Xây dựng Nội dung trình bày I II III Làm quen với PHP PHP Căn Các tính cho ứng dụng Web base Làm việc với Form II Các hàm làm việc với MySQL III Làm việc với File IV Các hàm làm việc với hình ảnh V Các hàm ngày tháng VI Các hàm liệu VII Cookies QueryString VIII Session IX Gỡ lỗi I I Làm quen với PHP I.1 I.2 I.3 I.4 I.5 I.6 I.7 PHP gì? Lịch sử phát triển PHP Lý chọn PHP Zend Engine Cài đặt PHP Chương trình PHP Các IDE cho PHP I.1 PHP gì? PHP phát triển từ ngôn ngữ kịch (script) với mục đích xây dựng trang Web cá nhân (Personal Home Page) Sau phát triển thành ngơn ngữ hồn chỉnh ưa chuộng tồn giới việc phát triển ứng dụng Web based Theo NetCraft: – – Tháng 11 năm 1999, triệu máy chủ Tháng năm 2000, 1.4 triệu máy PHP (PHP: Hypertext Perprocessor) ngôn ngữ kịch lập trình phía máy chủ (server-side) phổ biến giới PHP thường hoạt động theo thứ tự sau: – – – Người dùng gửi yêu cầu lên máy chủ Máy chủ xử lý yêu cầu (Thông dịch mã PHP chạy chương trình, mã PHP truy xuất CSDL, tạo hình ảnh, đọc ghi file, tương tác với máy chủ khác ) Máy chủ gửi liệu cho người dùng (thường dạng HTML) I.1 PHP gì? (2) I.2 Lịch sử phát triển PHP Phiên PHP phát triển năm 1994, bao gồm macro cho trang Web cá nhân (Personal Home Page) Sau đó, PHP phát triển thêm số chức gọi Form Interpreter (PHP/FI) có quan tâm lớn từ phía cộng đồng Phiên tiếp theo, PHP3, viết lại nhóm lập trình viên (Zeev Suraski, Andi Gutmans) PHP3 bổ sung thêm số tính cú pháp ngơn ngữ khác, trở thành ngơn ngữ kịch phía máy chủ ưa chuộng I.3 Lý chọn PHP Khi sử dụng PHP, người dùng có tốc độ nhanh nhiều so với ngôn ngữ kịch khác, PHP phần mềm mã nguồn mở, hỗ trợ nhiều lập trình viên giỏi, có số lượng người dùng đơng đảo Ngồi PHP chạy nhiều hệ điều hành khác I.3 Lý chọn PHP (2) Rút ngắn thời gian phát triển – PHP cho phép bạn tách phần HTML code phần script, độc lập công việc phát triển mã thiết kế Điều vừa giúp lập trình viên dễ dàng vừa làm cho chương trình mềm dẻo việc thay đổi giao diện PHP phần mềm mã nguồn mở – – PHP không phần mềm mã nguồn mở mà thực miễn phí (kể bạn sử dụng cho mục đích thương mại) Do phần mềm mã nguồn mở, lỗi (bug) PHP cơng khai nhanh chóng sửa chữa nhiều chuyên gia I.3 Lý chọn PHP (3) Tốc độ – Nhờ vào sức mạnh Zend Engine, so sánh PHP với ASP, thấy PHP vượt số test, vượt trội tốc độ biên dịch Tính khả chuyển – PHP thiết kế để chạy nhiều tảng khác nhau, làm việc với nhiều phần mềm máy chủ, sở liệu (ví dụ: bạn phát triển dự án UNIX, sau chuyển sang NT mà khơng gặp phải vấn đề gì) I.4 Zend Engine Zend scripting engine nằm bên PHP Zend Engine thực sự cải tiến đáng kể Hầu hết đoạn mã viết PHP3 chạy PHP4 với tốc độ tăng gấp 200 lần VI.4.4 Hàm xử lý lỗi Giấu tất lỗi phương án hay, để quản lý lỗi tốt hơn, bạn nên dùng hàm xử lý lỗi (error handler) Error handler thiết lập hàm set_error_handler(), khôi phục lại hàm restore_error_handler() VII Hình ảnh VII.1 VII.2 VII.3 VII.4 Yêu cầu phần mềm Tạo vẽ ảnh Vẽ Text Co dãn ảnh VII.1 Yêu cầu phần mềm Với PHP bạn sử dụng hàm graphic để vẽ hình ảnh lưu trữ dạng file (GIF, PNG, JPG) Để thực chức này, bạn cần phải cài đặt thư viện GD ( http://www.boutell.com/gd/ ) Để biết thư viện GD cài đặt hay chưa, sử dụng hàm phpinfo() hàm gd_info() Đối với PHP full (v5.0) có đầy đủ thư viện PEAR kèm, để chạy GD bạn việc thiết lập file php.ini: extension=php_gd2.dll VII.2 Tạo vẽ ảnh Day la caro Day cung la caro: VII.2 Tạo vẽ ảnh (2) Các hàm thường sử dụng – – – – – – resource imagecreate ( int x_size, int y_size ): Tạo ảnh với kích thước x_size * y_size, ảnh ko phải truecolor imagecolorallocate ( resource image, int red, int green, int blue ): Sử dụng để định nghĩa màu xuất ảnh Đối với ảnh sử dụng palette, lần gọi cho màu màu ảnh resource imagecreatetruecolor ( int x_size, int y_size ): Tạo ảnh truecolor bool imagejpeg ( resource image [, string filename [, int quality]] ) bool imagepng ( resource image [, string filename] ) bool imagegif ( resource image [, string filename] ) VII.2 Tạo vẽ ảnh (3) ImageSetPixel(image, x, y, color); ImageLine(image, start_x, start_ y, end_x, end_ y, color); ImageDashedLine(image, start_x, start_ y, end_x, end_ y, color); ImageRectangle(image, tlx, tly, brx, bry, color); ImageFilledRectangle(image, tlx, tly, brx, bry, color); ImagePolygon(image, points, number, color); ImageFilledPolygon(image, points, number, color); ImageArc(image, center_x, center_ y, width, height, start, end, color); ImageFill(image, x, y, color); ImageFillToBorder(image, x, y, border_color, color); VII.3 Vẽ Text VII.3 Vẽ Text (2) VII.4 Co dãn ảnh VII.5 Màu sắc VII.5.1 True color & color index VII.5.2 Kênh alpha VII.5.1 True color & color index Ảnh bạn tạo hàm imagecreate() – tạo ảnh sử dụng colorindex palette imagecreatetruecolor () – tạo ảnh truecolor (24bit/pixel) Từ GD2.0 trở lên, ta làm việc với kênh alpha (xem phần sau) Để lấy màu điểm ảnh – – $color = ImageColorAt(image, x, y); $values = ImageColorsForIndex(image, index); Với ảnh truecolor, cấu trúc màu gồm: 7bit alpha, 8bit Red, 8bit Green, 8bit Blue (từ trái qua phải) Có thể sử dụng cơng thức sau – $a $r $g $b = = = = ($col ($col ($col ($col & & & & 0x7F000000) >> 24; 0x00FF0000) >> 16; 0x0000FF00) >> 8; 0x000000FF); VII.5.2 Kênh alpha Kênh alpha GD gồm 7bit (giá trị từ đến 127) Để sử dụng kênh alpha sử dụng hàm – – ImageColorResolveAlpha() ImageAlphaBlending() IX XML IX.1 Tạo văn XML IX.2 Đọc XML IX.1 Tạo văn XML Cách đơn giản để tạo văn XML đặt lại header trang PHP – header('Content-Type: text/xml'); Sau đưa thơng tin browser hàm echo, print bình thường IX.2 Đọc XML