Lập trình PHP - Chương 1: Tổng quan thiết kế Web
Nhắc lại một số khái niệm
Phân loại Website
Một số bước chính trong phát triển Website
Giới thiệu và hướng dẫn cài đặt các phần mềm hỗ trợ xây dựng Website
ML, chỉ thay ñổi khi có sự thay ñổi của người xây dựng – Khả năng tương tác yếu – Webserver hoạt ñộng giống 1 file server. Client (tiếp) Web Server URL yêu cầu URL yêu cầu HTML HTML Network Biên dịch, Thực thi Trang web động Web ñộng – Mỗi người sử dụng có thể nhận ñược nội dung khác nhau phụ thuộc vào kết quả chạy chương trình. – Trang web viết bằng HTML + Ngôn ngữ lập trình phía server. Có thể ñược thay ñổi bởi người sử dụng – Khả năng tương tác mạnh Client (tiếp) Một số công nghệ viết web ñộng – Động phía Client: • JavaScript, VBScript ñược chạy ở client. • Applet • Flash – Động phía Server: • Common Gateway Interface (CGI) • Java Server Pages (JSP) • ASP: Microsoft – Viết bằng VBScript, JavaScript chạy phía server. – Sử dụng web server IIS. • PHP: Mã nguồn mở – Ngôn ngữ lập trình PHP, chạy phía server. – Webserver: Apache, IIS – Bộ biên dịch: PHP • Perl Một số bước chính trong phát triển website Một số bước chính trong phát triển website Phân tích và thiết kế hệ thống – Đặc tả – Phân tích – Thiết kế – Lập trình – Kiểm thử (tiếp) Một số chú ý – Đặc tả: Website ñể làm gì? Ai dùng? Trình ñộ người dùng? Bố cục? Nội dung? Hình ảnh? v.v.. – Phân tích: Mối liên quan giữa các nội dung? Thứ tự các nội dung? (kịch bản website) – Thiết kế: Sơ ñồ cấu trúc website, giao diện, tĩnh hay ñộng, CSDL, nội dung từng trang, liên kết giữa các trang v.v.. – Xây dựng: cấu trúc thư mục, các module dùng chung, v.v.. (tiếp) Kiểm thử – Kiểm tra trên nhiều trình duyệt – Kiểm tra trên nhiều loại mạng – Kiểm tra tốc ñộ trên các loại ñường truyền – Kiểm tra các liên kết – Thử các lỗi bảo mật – v.v.. Các phần mềm hỗ trợ xây dựng website Các phần mềm nền tảng xây dựng website Operating System: Linux Web Server: Apache Database Server: MySQL Interpreter: PHP Các phần mềm hỗ trợ Server Suites: LAMPP,XAMPP, EasyPHP... Integrated Development Environment – NetBean, Eclipse, Dreamweaver... Database – MySQL Administrator Tool – MySQL Query Browser (tiếp) XAMPP – Download từ website: linux.html hoặc: xampp-win32-1.7.1-installer.exe – Cài ñặt XAMPP: vào Terminal, gõ: tar xvfz xampp-linux-1.7.1.tar.gz -C /opt – Chú ý: • Có thể xảy ra xung ñột giữa MySQL ñược cài sẵn (từ trước) và MySQL của XAMPP (tiếp) NetBean – Download từ website: hoặc: ps/netbeans-6.5-ml-linux.sh – Cài ñặt: mở Terminal, gõ sh netbeans- 6.5beta-linux.sh – Khởi ñộng NetBean từ màn hình Desktop (tiếp) MySQL – Download từ website: tools/5.0.html – Tiến hành cài ñặt thông qua cửa sổ dòng lệnh Terminal – Truy cập cơ sở dữ liệu thông qua MySQL Administrator với username và password mà hệ thống cung cấp How to write 1st PHP Page Viết chương trình PHP đầu tiên Cài ñặt Xampp: – Download gói cài ñặt theo ñường dẫn (ở phần trước) – Khởi ñộng xampp bằng quyền root – Chuyển sang người dùng Root: #sudo su – Khởi ñộng Xampp: /opt/lampp/lampp start (tiếp) Sử dụng Nano hoặc Gedit ñể viết file php với những dòng lệnh sau: <?php $a = “PHP is so easy !”; echo $a; ?> Lưu lại file vừa viết thành: index.php Copy vào thư mục /opt/lampp/htdoc/coursek51/ Chạy PHP từ web browser: Chương 2: Làm quen với PHP Tổng quan Cú pháp ngôn ngữ Cấu trúc ñiều khiển Lập trình hướng ñối tượng Phương thức truyền dữ liệu Các khái niệm nâng cao Tổng quan về PHP Tổng quan về PHP PHP: viết tắt hồi quy “PHP: Hypertext Preprocessor” Là ngôn ngữ lập trình ñể viết các trang web ñộng chạy trên server Bộ biên dịch PHP là phần mềm mã nguồn mở, có thể chạy cùng với các web server như Apache, IIS,… Thường kết hợp với hệ quản trị CSDL MySQL (tiếp) Có khả năng hướng ñối tượng Thông dịch Phân biệt chữ hoa và chữ thường Mỗi lệnh kết thúc bởi chấm phảy (;) Cú pháp ngôn ngữ PHP Cú pháp ngôn ngữ PHP Chú thích trong PHP – // hoặc # ñể bắt ñầu một dòng chú thích. – /* … */ ñể bắt ñầu một ñoạn chú thích <?php #Đây là chú thích //Đây là chú thích /*Đây là chú thích 1 Đây là chú thích 2 /* ?> (tiếp) Biến – Phân biệt chữ hoa, chữ thường – Bắt ñầu bằng dấu $, tiếp ngay sau $ là tên biến $a = 5; $A = 10; – Tên biến bao gồm chữ cái, chữ số, dấu gạch nối dưới (_) và phải bắt ñầu bằng chữ cái hoặc (_) $a_1 = “Hello”; //hợp lệ $5b = 10; //không hợp lệ $trung-tam = “HPCC” //Không hợp lệ (tiếp) – Không cần khai báo trước (ñược tự ñộng khai báo vào lần gán giá trị ñầu tiên) – Việc sử dụng biến chưa khởi tạo sẽ gây lỗi – Cho phép sử dụng giá trị của biến làm tên biến khác if($a<10) //không hợp lệ khi chưa khởi tạo $a $a = “temp”; $$a = 5; //tương ñương $temp = 5; (tiếp) PHP hỗ trợ 4 kiểu dữ liệu – Số: • Số nguyên: -231 ñến 231 – 1 + Hệ thập phân: $a = 16; + Hệ 16 (hexa): $a=0x10; • Số thực: từ 1.7E-308 ñến 1.7E+308 + Biểu diễn: $a = 0.017; + Dạng khoa học: $a = 17.0E-03 – Chuỗi: • Giới hạn bởi nháy ñơn (‘) và kép (“) • Chuỗi ñặt trong dấu nháy kép bị thay thế và xử lý ký tự thoát còn nháy ñơn thì không. VD: $a = “Hello”; $b = “$a World” //tương ñương $b = “Hello World” $c = ‘$a World’ //tương ñương $c = ‘$a World’ (không thay ñổi) (tiếp) Chuỗi (tiếp) – Để làm rõ các biến trong chuỗi, cần bao biến vào giữa cặp ngoặc nhọn { } – Biến mảng, biến biến, biến trong tên có dấu gạch nối hoặc dấu chấm khi viết trong chuỗi bắt buộc phải bao lại $a = “He”; $b = “$allo”; //lỗi vì PHP hiểu là $allo $c_1 = “{$a}llo”; //ñúng ($c_1 = “Hello”) $d = “{$c_1} World”; // $d = “Hello World” (tiếp) Chuỗi (tiếp) – Ký tự thoát (\): ñược sử dụng ñể viết các ký tự ñặc biệt trong chuỗi Cần có chuỗi: He said:”PHP is good”! $a = “He said: \“PHP is good\”!”; – Một số ký tự buộc phải sử dụng ký tự thoát như $,\, “,… ngoài ra còn: • \n: xuống dòng • \r: trở về ñầu dòng • \t: dấu tab (tiếp) Kiểu logic – Có hai trạng thái là true và false function status ($in) { if ($in<5) return true; else return false; } //giá trị trả về của hàm status(…) sẽ có giá trị thuộc kiểu logic (tiếp) Kiểu mảng – Cho phép chứa nhiều giá trị dữ liệu ñược ñánh chỉ mục bằng số hay chuỗi – Để truy cập vào 1 phần tử, ñặt chỉ số trong [ ] – Có thể sử dụng chỉ số không liên tiếp – Có thể thêm phần tử vào cuối mảng bằng cách bỏ chỉ số $a[0] = “Xin”; $a[] = “Chào”; //$a[1] = “Chào” (tiếp) Kiểu mảng (tiếp) – Chỉ số chuỗi $a [“ho”] = “Nguyen”; $a [“ten”] = “Mai”; – Mảng nhiều chiều (so phan tu cua mang) • Được coi là mảng của mảng $a[0][0] = “STT”; $a[0][1] = “1”; $a[1][0] = “Ho ten”; $a[1][1] = “Nguyen Van A”; (tiếp) Kiểu mảng (tiếp) – Khởi tạo mảng bằng hàm array() • Chỉ số mặc ñịnh $a=array(“xin”, “chào”, “bạn”); /*tương ñương với $a[]=“xin”; $a[]=“chào”; $a[]=“bạn”;*/ • Chỉ số mặc ñịnh với chỉ số ñầu khác 0 $a=array(5=>“xin”, “chào”, “bạn”); //phantu 5,6,7 /*tương ñương với $a[5]=“xin”; $a[]=“chào”; $a[]=“bạn”;*/ (tiếp) Khởi tạo mảng bằng hàm array()(tiếp) – Chỉ số chuỗi: $a=array(“ten”=>”Hồng”, “mau”=>”Đỏ”); /*Tương ñương với: $a[“ten”] = “Hồng”; $a[“mau”] = “Đỏ”;*/ – Mảng nhiều chiều: $a = array( array(“TT”, “Họ tên”), array(1,”Nguyễn Văn A”) ); (tiếp) Ép kiểu và kiểm tra kiểu – Sử dụng cú pháp tương tự C/C++ $a = “123abc”; $so = (int) $a; $kytu = (string) $a; Ký hiệu Ý nghĩa kiểu (int), (integer) Số nguyên (real), (double), (float) Số thập phân – Kiểm tra kiểu: Gettype(),is_bool(),is _long(),... (string) Chuỗi (array) Mảng (object) Đối tượng (bool), (boolean) Logic (unset) NULL, tương tự như gọi unset() (tiếp) Toán tử – Kiểu số: • Kết hợp: +, -, *, /, % • Tăng giảm: ++, -- VD: $a++; $a--; ++$a; --$a; – Chuỗi: Toán tử chấm (.) – Logic: AND (&&), OR (||), XOR, ! – Gán: =, +=, -=, *=, /=, %=, &=,^=,.= – So sánh: ==, !=, , = – Cấp phát: new A(); Các cấu trúc điều khiển Câu lệnh rẽ nhánh If if (BTLG) các_lệnh1; if (BTLG) if (BTLG1) lệnh1; elseif (BTLG2) lệnh2; các_lệnh1; else các_lệnh2; elseif (BTLG3) lệnh3; else các_lệnh_khác; $biến= BTLG?Giá_trị1:Giá_trị2 switch switch ($biến){ case (giá_trị1): các_lệnh1; case (giá_trị2): các_lệnh2; default: các_lệnh_khác; } Lặp không xác định While...do while (BTLG) { các lệnh; do { các_lệnh } while (BTLG); } Lặp xác định for for (lệnh_khởi_tạo; BTLG; lệnh2){ các_lệnh; } foreach ($biến_mảng as $giá_trị){ lệnh; } foreach ($biến_mảng as $khoá=>$giá_trị){ lệnh; } Break và Continue Break: Kết thúc khối lệnh for, while, do- while hoặc switch Continue: bỏ qua phần ở sau continue trong vòng lặp, chuyển sang vòng lặp tiếp. Hàm tự tạo function Khái báo hàm function tên_hàm(ts1, ts2,…, tsn) { //các lệnh trong thân hàm } Để trả ra giá trị cho hàm ta sử dụng lệnh return biểu_thức; Để thoát khỏi hàm: – sử dụng return – hoặc exit; Hàm tự tạo (tt) Gọi hàm: tên_hàm(gt1,gt2,…,gtn); Chú ý: – Nếu hàm không có tham số, khi khai báo hàm, gọi hàm vẫn phải giữ lại () – Để khai báo hàm với các tham số mặc ñịnh, khi khai báo ta ñưa ngay giá trị tham số vào. function tên_hàm(ts1=gt1,ts2=gt2,…) Phạm vi biến Phạm vi biến là phạm vi ở ñó biến xác ñịnh. Trong PHP, biến có 3 phạm vi: – Local variables - Biến cục bộ: • Khởi tạo trong hàm • Có tác dụng từ khi khởi tạo ñến hết hàm. – Global variables - Biến toàn cục: • Khởi tạo ở ngoài hàm • Có tác dụng từ khi khởi tạo ñến hết file trừ ở trong hàm. • Để ñưa 1 biến toàn cục vào trong hàm, sử dụng khai báo global $biến1, $biến2,…; $_GLOBAL[’biến’]=“giá trị” – Super Global Variables: Siêu toàn cục: Một số biến có sẵn của PHP: $_SERVER, $_SESSION... Biến tĩnh Khai báo trong hàm Giá trị ñược lưu trữ qua nhiều lần gọi hàm Chỉ ñược khởi tạo ở lần khai báo ñầu tiên Để khai báo: static $biến_tĩnh=giátrị; Hằng số Khai báo: define (“tên_biến”,giá_trị) Kiểm tra tồn tại hằng số bằng cú pháp: defined(“tên_biến”) Chèn file include(“ñịa_chỉ_file”); require(“ñịa_chỉ_file”); include_once(“ñịa_chỉ_file”); require_once(“ñịa_chỉ_file”); The End of First Day
File đính kèm:
- Lập trình PHP - Chương 1_Tổng quan thiết kế Web.pdf