1. Trang chủ
  2. » Công Nghệ Thông Tin

LẬP TRÌNH PHP (căn bản)

18 308 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Lập Trình PHP (Căn Bản)
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Công Nghệ Thông Tin
Thể loại Tài liệu
Thành phố Hồ Chí Minh
Định dạng
Số trang 18
Dung lượng 376,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

1. Giới thiệu PHP (viết tắt hồi quy "PHP: Hypertext Preprocessor") 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ủ Webserver. Do PHP được phát triển chỉ để dành cho ứng dụng web nên rất dễ dàng nhúng mã vào trang HTML. Tốc độ nhanh, nhỏ gọn, cú pháp giống C, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình web rất phổ biến. Ngôn ngữ, các thư viện, tài liệu gốc của PHP được xây dựng bởi cộng đồng nhưng cũng có sự đóng góp rất lớn của Zend Inc., công ty do các nhà phát triển cốt lõi của PHP lập nên. Nói đơn giản: PHP là ngôn ngữ dạng script thực thi trên webserver nhằm tạo ra trang web động Thẻ đánh đấu bắt đầu và kết thúc của phần mã PHP, qua đó máy chủ biết để xử lý và dịch mã cho đúng. Mỗi dòng kết thúc bằng dấu ; Trong trang html, các lệnh php nằm trong tag hoặc Các khối lệnh nằm trong { … } Tên mở rộng của file là php Chú thích

Trang 1

LẬP TRÌNH PHP

(CĂN BẢN)

1 Giới thiệu

PHP (viết tắt hồi quy "PHP: Hypertext Preprocessor") 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ủ Webserver

Do PHP được phát triển chỉ để dành cho ứng dụng web nên rất dễ dàng nhúng mã vào trang HTML Tốc độ nhanh, nhỏ gọn, cú pháp giống C, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình web rất phổ biến

Ngôn ngữ, các thư viện, tài liệu gốc của PHP được xây dựng bởi cộng đồng nhưng cũng có sự đóng góp rất lớn của Zend Inc., công ty do các nhà phát triển cốt lõi của PHP lập nên

Nói đơn giản: PHP là ngôn ngữ dạng script thực thi trên webserver nhằm tạo ra trang web động Thẻ <? và thẻ ?> đánh đấu bắt đầu và kết thúc của phần mã PHP, qua đó máy chủ biết để xử lý và dịch mã cho đúng

Mỗi dòng kết thúc bằng dấu ;

Trong trang html, các lệnh php nằm trong tag <? … ?> hoặc <?php …?>

Các khối lệnh nằm trong { … }

Tên mở rộng của file là php

Chú thích

// : 1 dòng

/ *

*/

File PHP chỉ chạy khi nó được chuyển giao từ webserver Vì vậy, muốn thực thi file php, bạn phải request nó thông qua webserver (nghĩa là mở browser, gõ http://localhost/trangdong.php Do đó không thể nhúp đúp vào file php để xem nó ở localcal như trang html được Để chạy file PHP : + Nếu máy của bạn cài IIS : tạo file trong folder C:\Inetpub\wwwroot

+ Nếu máy của bạn cài AppserV : tạo file trong folder C:\AppserV\www

Trang 2

2 Tạo website để lập trình PHP

Yêu cầu: folder chứa site của bạn phải nằm trong folder gốc của webserver

Giả sử folder site của bạn là WebTinTuc, đặt trong C:\AppSerV\www Dưới đây là hướng dẫn cách tạo site PHP

B1: Trong Dreamweaver, nhắp menu Site  New Site

B2: Gõ tên Site (WebTinTuc) rồi nhắp Next

B3: Chọn Yes rồi chọn PHP MySQL

B4: Chọn Edit and Test locally… rồi chọn folder chứa site ở bên dưới (C:\AppServ\www\

WebTinTuc)

B5: Gõ địa chỉ website: http://localhost/WebTinTuc

Trang 3

B6: Nên chọn No (Chưa cần kết nối đến đến remote server lúc này) rồi nhắp Next

B7: Nhắp Done để kết thúc tạo site

Ghi chú: không nhất thiết phải tạo folder WebTinTuc cho site của bạn nhưng phải đặt trong folder gốc của webserver và tên folder trong B5 và B4 phải giống nhau

3 Tạo trang PHP

Nhắp menu File  New  Chọn PHP  Create

Biến dùng để chứa các giá trị trong quá trình tính toán

Không cần khai báo kiểu dữ liệu lúc khai báo biến

Các kiểu dữ liệu mà biến có thể lưu:

+ Số nguyên : int

+ Số thực : float, double

Trang 4

+ Chuỗi : string

+ Object

+ Logic : True hoặc false

+ Kiểu mảng: Array

+ Null : giá trị đặc biệt, nhằm thể hiện tính rỗng, chưa được gán gì

Khai báo :

$TenBien=<giatri> ;

<?

$hoten= "Tèo"; //Tạo biến hoten và gán giá trị

$dem=1; //Tạo biến dem và gán giá trị

Lệnh echo

Dùng để hiện giá trị của 1 biến, hiện 1 chuỗi

Ví dụ :

<?

echo $hoten; //Hiện giá trị biến hoten

echo "Hello"; //Hiện chữ Hello, không hiện dấu nháy

?>

Là đối tượng chứa giá trị cố định

Khai báo:

define("TenHang",GiaTri);

Ví dụ:

<hr>

<?

define("tygia",17000);

$usd=10;

$vnd=$usd*tygia;

echo "VND=$vnd ";

?>

6 Các phép toán

Số học: + -, *, /, % (chia lấy dư)

So sánh: ==, >=, <=, >, < , !=

Ghép chuỗi:

Logic: !, && , ||

Tăng 1 : ++

Giảm 1 :

Gán: =

<?

$soluong=3; //Khai báo biến soluong và gán giá trị

echo $soluong; //3

Trang 5

$soluong =5; // biến soluong đã có, chỉ gán giá trị

echo $soluong; //5

?>

7 Lệnh if:

a Lệnh if đơn giản:

if (điều kiện) {

Khối Lệnh 1;

}

else {

Khối Lệnh 2;

}

Phần else và khối lệnh 2 có thể không có

Nếu khối lệnh 1 khối lệnh 2 chỉ 1 gồm lệnh thì có thể bỏ cặp { }

Khối lệnh có thể là mã lệnh php hoặc mã lệnh html

Ví dụ 1 :

<hr/>

<? $diem=6;

if ($diem>=5) echo "Đậu";

else echo "Rớt";

?>

Ví dụ 2 : Sử dụng template khác nhau cho trang tùy theo thời gian

Mở file index1.html rồi save as thành index1.php

Qua chế độ code, đến dòng 21 sẽ thấy đoạn code

<link href="c1.css" rel="stylesheet" type="text/css">

Bổ sung để có kết quả sau:

<link href="<? if (date('H')<=12) echo "c1.css"; else echo "c2.css"; ?>" rel="stylesheet" type="text/css">

F12 test thử

b Lệnh if elseif else

Cú pháp

if (Điều kiện1) {

Khối lệnh 1;

}

elseif (Điều kiện2) {

Khối lệnh 2

}

else {

Khối lệnh

}

Ví dụ:

<hr/>

<?

Trang 6

if ($diem>=8) echo "Giỏi";

elseif ($diem>=7) echo "Khá";

elseif ($diem>=5) echo "Trung bình";

else echo "Kém";

?>

c Lệnh if ngắn gọn

Cú pháp:

(<dkien>)?<giá trị đúng>:<giá trị sai>;

Ví dụ:

<hr/>

<?

$dtb=5;

echo ($dtb>=5)? "Được lên lớp":"Ở lại";

?>

8 Vòng lặp for:

Là lệnh lặp 1 khối lệnh với số lần lặp nhất định

Cú pháp:

for (<biến đếm> ; <Điều kiện dừng> ; <Tăng/giảm biến đếm>) {

Khối lệnh.

}

Ví dụ:

<?

for ($i=1;$i<=10;$i++) {

echo "i=$i<br>";

}

?>

9 Vòng lặp while :

Là lệnh lặp khối lệnh số lần lặp không xác định

Cú pháp:

while (<Điều kiện>){

Khối lệnh

}

Điều kiện lặp được kiểm tra trước, do đó có thể không thực hiện lần nào

Ví dụ:

<hr>

<? $tong=0; $i=1;

while ($i<=10) {

$tong+=$i;

$i++;

Trang 7

} echo "Tổng=$tong";

?>

10 Vòng lặp Do While:

Là lệnh lặp khối lệnh số lần lặp không xác định

do {

Khối lệnh

} while (<Điều kiện>);

Điều kiện lặp được kiểm tra sau, do đó thực hiện ít nhất 1 lần

Ví dụ:

<? $tong=0; $i=1;

do {

$tong+=$i;

$i+=2;

}while ($i<=10);

echo "Tổng các số lẻ=$tong";

?>

11 Hàm (Function)

a Giới thiệu:

Hàm là 1 khối lệnh được đặt tên để gọi sử dụng nhiều lần PHP có khoảng hơn 700 hàm Chúng ta cũng có thể tự định nghĩa thêm các hàm mới

Hàm có thể trả vế 1 giá trị 1 giá trị nào đó sau khi tính toán hoặc không

b Khai báo:

function <Tên hàm>(<tham số 1>,<tham số 2>, ){

[return giá trị;]

}

c Ví dụ:

Tạo file ham.php

Định nghĩa hàm: gõ ở đâu đó (trong tag head):

<?

function solonnhat ($a,$b,$c ) { //php không chú ý gì đến các lệnh trong hàm cho đến khi hàm được gọi

$m=$a;

if ($b>$m) $m=$b;

if ($c>$m) $m=$c;

return $m;

}

?>

Sử dụng hàm: trong tag body

Số lớn nhất là :

<?

$x=8; $y=12; $z=10; $m=4; $n=19;

Trang 8

$t=solonnhat($x, $y,$z);

$s=solonnhat($t, $m,$n);

echo $s;

?>

F12 xem thử (kết quả là ?)

d Include file

Người ta thường đưa các hàm có cùng 1 loại (như xử lý chuỗi, tính toán, tiền tệ, bảo mật…) vào 1 file php riêng và include vào trang web khi cần

Cú pháp:

include "TenFile” ; hoặc

require "TenFile” ; hoặc

include_once "TenFile” ; hoặc //để đảm bảo include chỉ 1 lần, nếu đã include rồi thì php sẽ không

require_once "TenFile” ; // không include nữa, nhằm để tránh trùng tên hàm

Tênfile thường là file php, cũng có thể là file html

Ví dụ:

 Tạo file ngay.php, xóa hết mọi code html rồi định nghĩa hàm sau:

<?php

function LucNayLa() { // Chuyển giờ hệ thống sang tiếng Việt

$anh = array ( "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun", "am", "pm", ":" );

$viet = array ( "Thứ hai", "Thứ ba", "Thứ tư", "Thứ năm", "Thứ sáu", "Thứ bảy", "Chủ nhật", " phút, sáng", " phút, chiều", " giờ " );

$timenow = gmdate("D, d/m/Y - g:i a.", time() + 7*3600);

$t = str_replace( $anh, $viet, $timenow);

return $t;

}

?>

 Tạo 1 trang php mới, lưu với tên là testInclude.php Vào 1 trong tag body, gõ:

<?

include "ngay.php";

echo LucNayLa();

?>

 F12 xem thử

12 String (chuỗi)

Là 1 dãy ký tự trong nháy kép hoặc nháy đơn

a Chiều dài chuỗi

strlen(chuỗi) ;//Trả về số ký tự trong chuỗi

<hr/>

<?

$a="Chao ban";

echo strlen($a) ; // 8

?>

b Trích chuỗi con

substr(chuỗi gốc, vị trí đầu, chiều dài chuỗi con);

Trang 9

$str=“Hello World”;

echo substr($str, 3,5); // lo wo

?>

c Tìm kiếm chuỗi con

strpos(chuỗi gốc, chuỗi con); // Trả về chỉ số là nơi xuất hiện chu

<?

$str="Chao ban";

echo strpos($str,"a"); //2

?>

d Tìm và thay thế

str_replace(<chuỗicầntìm>,<chuỗithaythế>,<chuỗigốc>);

<?

$str="Hello World";

$str=str_replace('o','e',$str);

echo str; //Helle Werld

?>

13 Array (mảng)

a Giới thiệu:

Mảng là 1 đối tượng được tạo ra nhằm lưu trữ các dữ liệu có tính tương đồng Trong mảng có nhiều phần tử với những giá trị khác nhau và được đánh theo số thứ tự từ 0 trở đi (chỉ số phần tử) hoặc được phân biệt theo dạng chuỗi (key)

name1=“Teo”;

name2=“Ty”;

name3=“Map”;

Giá trị các key phải khác nhau

b Khai báo mảng

$TênMảng=array(); // khai báo mảng rỗng

$TênMảng=array(giá tri 1, giá trị 2,…); //khai báo mảng có các phần tử đánh bằng chỉ số

$ TênMảng =array("key1" =>giá trị 1, "key2" => giá trị 2, "key3" => giá trị 3); //Khai báo mảng dùng key

c Thể hiện cấu trúc mảng:

Có thể dùng 2 hàm:

var_dump(TenMang); // Liệt kê chi tiết bao nhiêu phần tử, index , kiểu và giá trị của từng phần tử

print_r(TenMang); // liệt kê index và giá trị từng phần tử Không hiện kiểu và tổng số phần tử

d Ví dụ:

<?

$giohang=array();//khai báo mảng rỗng

$diem=array(0,5,7); // 3 phần tử chỉ số là 0,1,2

$sanpham=array("idSP"=>5, "TenSP"=>"Gạo","Gia"=>12000); // đánh theo key

echo "Cấu trúc mảng diem: <br/>";

var_dump($diem);

echo "<br>";

echo "Cấu trúc mảng sanpham: <br/>";

Teo Ty Map

Trang 10

?>

e Thêm phần tử vào mảng

<hr/>

<?

$diem[]=9; //Thêm 9 vào cuối mảng điểm, chỉ số cuối tăng 1  $diem=array(0,5,7,9)diem=array(0,5,7,9)

$sanpham["SoLuong"]=3; //thêm 3 làm phần tử cuối của mảng sanpham, key là SoLuong

print_r($diem);

echo "<br>";

print_r($sanpham);

?>

f Truy xuất phần tử mảng

$ TênMảng[chiso] ; hoặc

$ TênMảng["key"] ;

<hr/>

<? echo $diem[1] "<br/>"; //5

echo $sanpham["TenSP"]; //Gạo

?>

g Đếm phần tử

count($TênMảng);

<hr/>

<? echo count($diem) ; //3 ?>

h Liệt kê phần tử mảng dùng vòng lặp for :

Liệt kê mảng mà các phần tử được đánh theo chỉ số liên tục

<hr/>

<?

$giatri=array(8,10,9) ;

for ($i=0 ;$i<count($giatri) ;$i++) {

echo "Giá trị thứ $i là $giatri[$i]<br>";

}

?>

i Dùng vòng lặp while :

Liệt kê các phần tử của mảng có chỉ số dạng key

<hr/>

<?

$sanpham=array("idSP"=>5, "TenSP"=>"Gạo","Gia"=>12000, "SoLuong"=>3);

reset($sanpham); // đưa con trỏ về phần tử đầu

while (key($sanpham)!=null) {

echo key($sanpham) " = " current($sanpham) "<br/>";

next($sanpham); //, prev: lui trái, next: ptừ kế

}

?>

<hr/>

<?

$sanpham=array("idSP"=>5, "TenSP"=>"Gạo","Gia"=>12000, "SoLuong"=>3);

reset($sanpham); // đưa con trỏ về phần tử đầu

?>

<table border=1>

Trang 11

<? while (key($sanpham)!=null) { ?>

<tr><td><? echo key($sanpham); ?> </td><td><? echo current($sanpham); ?> </td></tr>

<? next($sanpham); // prev: lui trái, next: ptừ kế ?>

<? } ?>

</table>

Chú ý:

 1 phần tử của dãy có giá trị null cũng được, ghi vầy $a=array(10,null,7); Ghi vầy là sai: $a=array(10,,7);

14 Xử lý dữ liệu trên Form

a Đối tượng $_GET, $_POST

$_GET, $_POST là 2 mảng có sẵn trong PHP để chứa dữ liệu gửi lên từ form Cả hai là mảng dùng key Key là tên của các đối tượng trong form

$_GET là đối tượng chứa dữ liệu gửi lên từ form dùng Method là Get

$_POST là đối tượng chứa dữ liệu gửi lên từ form dùng Method là Post

b Cách lấy giá trị từ form

$_GET["Ten"]

$_POST["Ten"]

c Ví dụ 1:

Tạo 1 file tên dangnhap.php rồi tạo form login trong tag body như dưới đây:

<form action="xulydangnhap.php" method="GET" name="form1" id="form1">

<table width="286" border="0" align="center" cellpadding="4" cellspacing="0">

<caption>ĐĂNG NHẬP</caption>

<tr>

<td width="114">Tên đăng nhập</td>

<td width="150"><input name="u" type="text" class="txtfield" id="u" /> </td>

</tr>

<tr>

<td width="114">Mật khẩu</td>

<td><input name="p" type="password" class="txtfield" id="p" /> </td>

</tr>

<tr>

<td>&nbsp;</td>

<td><input type="checkbox" name="nho" id="nho" />Nhớ user và pass</td>

</tr>

<tr>

<td>&nbsp;</td>

<td><input name="button" type="submit" class="btnSubmit" id="button" value="Đăng Nhập" /

></td>

</tr>

</table>

</form>

Trang 12

Tạo file xulydangnhap.php rồi gõ mã sau vào tag body

<?

echo $_GET["u"] "<br>";

echo $_GET["p"] "<br>";

print_r($_GET )

?>

F12 file dangnhap.php, gõ user, pass rồi nhắp Login Nhìn URL của browser, bạn sẽ thấy file xulydangnhap.php và username, password

Chỉnh lại form trên với method là POST,

Sửa phương thức GET trong file xulydangnhap.php thành POST và thử lại Chú ý URL trên thanh Address khi nhắp nút Login

15 Đối tượng $_SERVER

Ngoài các thông tin trình duyệt gửi lên thông qua các con đường POST, GET, COOKIES, chúng ta cũng có thể thu được một số thông tin khác có liên quan đến trình duyệt cũng như các thông số liên quan đến máy chủ như: đường dẫn, địa chỉ IP, phiên bản Các thông tin này được lưu trữ trong biến mảng $_SERVER (đối với các phiên bản mới) hoặc $HTTP_SERVER_VARS (đối với các phiên bản cũ hơn bản 4.1.0):

$_SERVER['HTTP_HOST'] / $_SERVER['SERVER_NAME']: Tên của máy chủ host, nơi mà đoạn script được thực thi.

$_SERVER['PHP_SELF']: Tên file nằm trên folder gốc của website Ví dụ: biến $_SERVER['PHP_SELF'] trong script đặt tại địa chỉ http://example.com/test.php/foo.bar sẽ là /test.php/foo.bar

$_SERVER['QUERY_STRING']: Chuỗi chứa tên các tham số và giá trị (sau dấu ?)

$_SERVER['DOCUMENT_ROOT']: Folder gốc của website, nơi mà file script đang được thực thi Ví dụ: C:/AppServ/www

$_SERVER['HTTP_REFERER']: địa chỉ của trang web mà từ đó user link đến trang này.

$_SERVER['REMOTE_ADDR']: Địa chỉ của máy client, nơi người sử dụng đang duyệt web.

$_SERVER['REQUEST_URI']: Địa chỉ URI (Định danh đối với các tài nguyên mạng, là một dạng thức của URL).

$_SERVER['SERVER_SOFTWARE']: Chuỗi định danh của máy chủ, thường được cấp trong phần header khi trả lời các yêu cầu từ máy khách Ví dụ: Apache/2.2.4 (Win32) PHP/5.2.3

$_SERVER['REQUEST_METHOD']: Loại yêu cầu mà clientsử dụng để truy cập trang web VD: 'GET',

'HEAD', 'POST', 'PUT'

$_SERVER['SCRIPT_FILENAME']: Đường dẫn tuyệt đối của file script đang chạy Vd:

C:/AppServ/www/laptrinhphp/abc.php

$_SERVER['SCRIPT_NAME']: Đường dẫn của file script Vd /laptrinhphp/abc.php

<?php

Ngày đăng: 19/08/2013, 15:28

TỪ KHÓA LIÊN QUAN

w