b. Thẻ PHP
Có 4 lọai thẻ PHP khác nhau mà ta có thể sử dụng khi thiết kế trang web
• Thẻ Short : là thẻ mặc định trong PHP :
<? Echo “Hello World”; ?>
Để sử dụng thẻ này bạn phải khai báo trong file PHP.INI lệnh sau : short_open_tag=On
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
10
•
•
•
Thẻ định dạng XML : là thẻ có thể sử dụng với văn bản XML :
<?php Echo “Hello World”; ?>
Thẻ Script : Trong trừong hợp sử dụng PHP như 1 script như javascript hay vbscript ta dùng cú
pháp sau :
<script language=’php’>
echo “Hello World”;
</script>
Thẻ ASP : trong trường hợp khai báo PHP như 1 phần trong trang ASP thì dùng cú pháp :
<% echo “Hello World”; %>
Để sử dụng thẻ này bạn phải khai báo trong file PHP.INI lệnh sau : asp_tags=On
c. Sử dụng dấu ;
Sau 1 dòng lệnh PHP luôn kết thúc bằng dấu ; vì vậy các lệnh sau đều hợp lệ :
echo “ Hello!”;
echo “Goodbye”; Hay
echo “ Hello!”; echo “Goodbye”;
d. Ghi chú trong php
/*
•
Để ghi chú 1 nhóm lệnh ta dùng cú pháp /*…..*/
echo “hello world”;
echo “GoodBye”;
*/
•
Để ghi chú 1 dòng lệnh thì dùng dấu // hay #
// echo “hello world”;
echo “GoodBye”; # đây là chú thích
2. Sử dụng Biến
a. Biến Form
Khi 1 form gửi ra trị từ dưới client về sever ta có thể lấy ra giá trị của các biến này theo cách gửi tương
ứng
• Gửi bằng phưong thức POST :
echo “UserName là : “ . $HTTP_POST_VARS[“txtUser”];
echo “Password là : “ . $HTTP_POST_VARS[“txtPass”];
• Gửi bằng phưong thức GET :
echo “UserName là : “ . $HTTP_GET_VARS[“txtUser”];
echo “Password là : “ . $HTTP_GET_VARS[“txtPass”];
Bạn có thể viết tắt 2 trường hợp trên như sau với điều kiện khai báo thông số :
register_globals=On trong PHP.INI
echo “UserName là : “ . $txtUser;
echo “Password là : “ . $txtPass;
Dấu . chính là tóan tử ghép chuỗi bạn có thể viết lại theo cách sau PHP vẫn cho kết quả tương tự
vì PHP luôn hiểu sau dấu $ là 1 biến cho dù trong chuỗi:
echo “UserName là : $txtUser”;
echo “UserName là : $txtPass”;
b. Khai báo biến
1 biến khi khai sinh bạn đặt cho biến 1 tên. Tên biến không khỏang trắng, chỉ dùng các ký tự a-z, 0-9 và
dấu _. PHP phân biệt chữ thường và chữ hoa. PHP không yêu cầu bạn khai báo biến trước khi sử dụng
chúng. Ta nên khai báo biến và gán chó chúng 1 giá trị bạn đầu
$soluong=300;
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
11
$dongia=200;
$tongtien=$soluong*$dongia;
echo “Thành tiền : $tongtien”;
?>
c. Kiểu dữ liệu của biến
PHP hỗ trợ 5 kiểu dữ liệu sau :
• Integer : Sử dụng hầu hết cho giá trị dữ liệu kiểu số .
• Double : Sử dụng hầu hết cho giá trị dữ liệu kiểu số thực
• String : Sử dụng hầu hết cho giá trị dữ liệu kiểu chuỗi
• Array: Sử dụng hầu hết cho giá trị dữ liệu là mảng có phần tử cùng kiểu dữ liệu
• Object : Sử dụng hầu hết cho giá trị dữ liệu là đối tượng của lớp
Bạn có thể chuyển đổi kiểu dữ liệu như ví dụ sau :
$soluong=300;
$dongia=200;
$thue=(integer)($soluong*$dongia)*10/100;
$tongtien=(double)($soluong*$dongia+$thue);
echo “Thành tiền : $tongtien”;
?>
d. Bíên dạng biến thiên
Biến dạng biến thiên là 1 loại biến đặc biệt, loại biến này cung cấp cho bạn cách tự động thay đổi tên của
biến.
$qty="soluong";
echo "qty: ".$qty."
";
$$qty=40;
echo "soluong: ".$soluong;
?>
Kết quả là biến soluong = 40
e. Biến hằng trong PHP
Biến hằng trong PHP phải đượ khai báo bằng chữ hoa bằng từ khóa define
define("RATE",0.3);
$qty=10;
$price=40;
echo "RATE: ".RATE."
";
echo "Total: ".$qty*$price*RATE;
?>
f. Tầm họat động của biến
PHP cung cấp 2 loại vùng họat động cho biến :
• Biến cấp cục bộ là biến khai báo bên trong 1 function biến được khai sinh khi function được gọi
và chết đi khi function kết thúc, biến trong function nào thì chì được sử dụng trong function đó
mà thôi
• Biến cấp script hay biến tòan cục là biến khai báo trong 1 script php bên ngoài các function, nó có
thể được sử dụng trong tất cả các function của PHP trên trang web tương ứng.
g. Biến mảng
Biến mảng là biến dữ liệu lưu trự tập hợp gồm nhiều biến , mỗi biến được xem như là 1 phần tử trong
mảng chứa 1 giá trị bất kỳ.
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
12
•
Khai báo và gán giá trị có 1 mảng
//Declare and initial value
$product=array("Softdrink","Bear","Wine");
//Declare and assign value
$Items=array(2);
$Items[0]=1;
$Items[1]=2;
?>
• Sử dụng vòng lặp for để truy cấp biến mảng: bạn sử dụng vòng lặp này khi biết trước được số
phần tử của mảng.
$n=10;
$Items=array($n);
for ($i=0;$i<$n;$i++)
$Items[$i]=$i*2;
for ($i=0;$i<$n;$i++)
echo "element $i : ".$Items[$i]."
";
?>
• Sử dụng vòng lặp while để truy cấp biến mảng: bạn sử dụng vòng lặp này khi không biết trước
được số phần tử của mảng là bao nhiêu . Ta dùng hàm each kết hợp với vòng lặp while
$n=10;
$Items=array($n);
for ($i=0;$i<$n;$i++)
$Items[$i]=$i*2;
echo "No
Value
";
while ($i=each($Items))
{
echo $i["key"];
echo " ";
echo $i["value"]."
";
}
?>
Trong đó khóa key là vị trí của phần tử mảng, value là giá trị của phần tử mảng tương ứng với
phưuơng thức thứ key. Ngòai ra ta cũng có thể dùng hàm list để tách phần tử mảng vào biến.. Trong
trường hợp biến mảng items có 2 cột dữ liệu là key và value, ta có thể đọc từng phần tử vào 2 biến
tương ứng như sau :
$n=10;
$Items=array($n);
for ($i=0;$i<$n;$i++)
$Items[$i]=$i*2;
echo "Key Value
";
while (list($k,$v)=each($Items))
{
echo $k;
echo " ";
echo $v."
";
}
?>
Trong đó biến $k lấy giá trị ví trí của phần tử, biến $v là giá trị của phần tử thứ $k.
•
Mảng 2 chiều : khai bao và duyệt các phần tử của mảng 2 chiều
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
13
•
•
$products=array(array("TIR","Tires", 100),array("COR","Concord",
1000),array("BOE","Boeing", 5000));
for ($row=0;$row<3;$row++)
{
for ($col=0;$col<3;$col++)
{
echo "\t|\t".$products[$row][$col];
}
echo "
";
}
$products[0][0]="A";
$products[0][1]="A1";
$products[0][2]=10;
$products[1][0]="B";
$products[1][1]="B1";
$products[1][2]=20;
$products[2][0]="C";
$products[2][1]="C1";
$products[2][2]=30;
for ($row=0;$row<3;$row++)
{
for ($col=0;$col<3;$col++)
{
echo "\t|\t".$products[$row][$col];
}
echo "
";
}
?>
Sắp xếp mảng 1 chiều : sau khi khao báo và gán giá trị bạn nên sắp xếp dữ liệu trong mảng trước
khi in ra bằng hàm sort().
$products=array("Oil","Tires", "Van");
sort($products);
for ($row=0;$row<3;$row++)
{
echo "\t|\t".$products[$row];
echo "|
";
}
?>
Sắp xếp dữ liệu 2 cột : trong trường hợp mảng lưu trữ 2 cột ta dùng hàm asort() để sắp xếp dữ liệu
theo cột nhất định nào đó :
$products=array("Oil"=>100,"Tires"=>10, "Van"=>5);
asort($products);
while ($row=each($products))
{
echo $row["key"];
echo "\t\t";
echo $row["value"];
echo "
";
}
?>
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
14
h. Chuyển đổi biến
•
•
Hàm gettype(biến) : trả về 1 chuỗi cho biết biến đó thuộc kiểu dữ liệu nào. Nếu không xác định
được thì trả về chuỗi “unknown type”.
Hàm settype(biến, kiểu dữ liệu) : ép biến đó trở về kiểu dữ liệu tương ứng
$a=56;
echo "dattype of a:".gettype($a)."
";
settype($a,"double");
echo "now, dattype of a:".gettype($a)."
";
?>
i. Kiểm tra kiểu dữ liệu biến
•
•
•
•
•
•
•
•
•
is_array(biến) : Kiểm tra biến là kiểu dữ liệu array hay không.
is_double(biến) : Kiểm tra biến là kiểu dữ liệu double hay không.
is_float(biến) : Kiểm tra biến là kiểu dữ liệu double hay không.
is_real(biến) : Kiểm tra biến là kiểu dữ liệu real hay không.
is_long(biến) : Kiểm tra biến là kiểu dữ liệu long hay không.
is_int(biến) : Kiểm tra biến là kiểu dữ liệu int hay không.
is_integer(biến) : Kiểm tra biến là kiểu dữ liệu integer hay không.
is_string(biến) : Kiểm tra biến là kiểu dữ liệu string hay không.
is_object(biến) : Kiểm tra biến là kiểu dữ liệu object hay không.
3. Tóan tử trong PHP
a. Tóan tử số học
Tóan tử
+
*
/
%
Tên
Cộng
Trừ
Nhân
Chia
Modulo
Ví dụ
$a+$b;
$a-$b;
$a*$b;
$a/$b;
$a%$b
b. Tóan tử ghép chuỗi
Dấu chấm “.” Dùng để làm tóan tử ghép chuỗi
$a="HoaSen";
$b="University";
$b =$b.".com";
$a=$a.$b;
echo $a;
?>
hay
$a="Recruit";
$b="Vietnam";
$a=$a.$b;
echo $a.($c=".com");
?>
c. Tóan tử kết hợp
Tóan tử
+=
++
-=
Sử dụng
$a+ =$b
$a+ +
$a- =$b
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
Tương tự
$a=$a+$b;
$a=$a+1;
$a=$a-$b;
15
-*=
/=
%=
.=
$a - $a* =$b
$a/ =$b
$a% =$b
$a. =$b
$a=$a-1;
$a=$a*$b;
$a=$a/$b;
$a=$a%$b;
$a=$a.$b;
Tóan tử
==
===
! = hay <>
<
>
<=
>=
Sử dụng
$a= =$b
$a= = =$b
$a! =$b hay $a<>$b
$a<$b
$a>$b
$a< =$b
$a> =$b
Ý nghĩa
$a bằng $b
$a bằng và cùng kiểu dữ liệu $b
$a khác $b
$a nhỏ hơn $b
$a lớn hơn $b
$a lớn hơn hay bằng $b
$a nhỏ hơn hay bằng $b
Tóan tử
!
&& hay and
Sử dụng
!$a
$a>5 && $b<8 hay
$a>5 and $b<8
|| hay or
$a! =$b hay $a<>$b
Ý nghĩa
Phủ định
Trả về true nếu cả 2 điều kiện
true ngượ lại trả về false
Trả về true nếu 1 trong 2 điều
kiện true hay cả hai điều kiuện
true ngược lại trả về false
d. Tóan tử So sánh
e. Tóan tử logic
f. Toán tử ?
Tóan tử ? thay thế cho phát biểu điều khiển If và else với 1 câu lệnh bên trong. Ví dụ
$a=10;
$b=$a+10;
$c=0;
if($a>10)
$c=$a;
else
$c=$b;
echo "c:$c";
?>
Ta có thể thay thể cấu trúc if else trên bằng tóan tử ? như sau
$a=10;
$b=$a+10;
$c=($a>10)?$a:$b;
echo "c:$c";
?>
g. Tóan tử error
Trong trường hợp biếu thức hay phép tóan phát sinh lỗi trên trang web, nếu bạn muốn không xuất ra
thông báo lỗi này thì bạn dùng tóan tử error là dấu @
$a=10;
$c=0;
$b=$a/$c;
echo "b:".$b;
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
16
?>
Ví dụ trên sẽ xuất ra lỗi : Warning : Division by zero in …BẠn muốn không hiện lỗi này thì sửa
lại như sau :
$a=10;
$c=0;
$b=@($a/$c);
echo "b:".$b;
?>
4. Cấu trúc ngôn ngữ
a. Phát biểu if
Phát biểu if với 1 điều kiện, nếu điều kiện là true thì khôi lệnh trong phát biểu if được thực thi, điều kiện
phải được khai báo trong cặp dấu () như sau :
$a=10;
$b=8;
if($a>$b)
echo $a+$b
?>
Nếu khối lệnh chỉ có 1 dòng thì bạn áp dụng như ví dụ trên, tuynhiên khối lệnh mà từ 2 dòng trở lên bạn
phải đặt trong cặp dấu { } như ví dụ sau
$a=10;
$b=8;
if($a>$b)
{
echo $a . “
”;
echo $b
}
?>
b. Phát biểu else
Phát biểu else luôn là trường hợp của phát biểu if với 1 điều kiện, nếu điều kiện là true thì khôi lệnh trong
phát biểu if được thực thi còn nếu ngược lại thì nếu điều kiện là false thì khối lệnh trong phát biểu else
được thực thi.
$a=10;
$b=8;
if($a>$b)
echo $a + $b
else
echo $a - $b
?>
Tương tụ trong trường hợp phát biểu if nếu trong khối lệnh của phát biểu else có nhiều hôn 1 dòng lệnh
thì bạn phải đặt khối lệnh này trong cặp dấu {}
$a=10;
$b=8;
if($a>$b)
{
echo $a . “
”;
echo $b;
}
17
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
else
{
$a++;
echo $a;
}
?>
c. Phát biểu elseif
Trong trường hợp có nhiều hơn 2 điều kiện tùy chọn thì bạn phải chọn phát biểu elseif
$soluong=10;
if($soluong<10) $giamgia=10;
elseif ($soluong>=10 && $soluong<=20) $giamgia=20;
elseif ($soluong>20 && $soluong<=30) $giamgia=30;
elseif ($soluong>30 && $soluong<=40) $giamgia=40;
else $giamgia=0;
?>
d. Phát biểu switch
Là phát biểu cho phép lựa chọn 1 trong nhiều giá trị cho trước
$soluong=10;
switch ($soluong)
{
Case 10;
$giamgia =100;
break;
Case 20;
$giamgia =50;
break;
Case 30;
$giamgia =25;
break;
default :
$giamgia =0;
}
?>
Nếu đúng điều kiện case bạn cần khai báo phát biểu break nhằm thóat khỏi phát biểu switch, trong trường
hợp bạn không khai báo break trong mỗi phát biểu case thì PHP vẫn so sánh tiếp các điều kiện trong các
case kế tiếp. Nếu các điều kiện case không thỏa thì PHP sẽ thực thi khối lệnh trong phát biểu default.
e. Phát biểu vòng lặp While
Cú pháp :
while(điều kiện)
{
Khối lệnh;
}
Phát biểu vòng lặp này cho phép thực thi khối lệnh bên trong cho đến khi điều kiện của while là true.
$qtty=5;
$price=5000;
while($qtty>0)
{
echo "<tr><td>".$qtty."</td><td>".$qtty*$price."</td></tr>";
$qtty--;
}
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
18
?>
f. Phát biểu vòng lặp do….while
Cú pháp :
do
{
Khối lệnh;
}
while(điều kiện)
Phát biểu vòng lặp này cho phép thực thi khối lệnh bên trong cho đến khi điều kiện của do…while là
true. Phát biểu này sẽ lặp ít nhất 1 lần
$qtty=5;
$price=5000;
do
{
echo "<tr><td>".$qtty."</td><td>".$qtty*$price."</td></tr>";
$qtty--;
}
while($qtty>0)
?>
g. Phát biểu vòng lặp for
Cú pháp :
for(giá trị đầu,điều kiện,giá trị lặp)
{
Khối lệnh;
}
Vòng lặp này cho phép bạn thực thi khối lệnh theo số lần lặp qui định trước.
$qtty=5;
$price=5000;
for($rate=1;$rate<=$qtty;$rate++)
{
echo "<tr><td>".$qtty*$rate."</td><td>";
echo $qtty*$price."</td></tr>";
}
?>
h. Thoát khỏi cấu trúc
Để thóat khỏi vòng lặp hay phát biểu điều khiển nào đó bạn dùng từ khóa exit , khi php gặp lệnh này nó
sẽ thót ngay ra khỏi phát biểu mà không cần biểu điều kiện vẫn còn thỏa trong vòng lặp hay so sánh.
$qtty=5;
$price=5000;
while($qtty>0)
{
echo "<tr><td>".$qtty."</td><td>";
echo $qtty*$price."</td></tr>";
$qtty--;
if ($qtty==3)
exit;
}
?>
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
19
5. Tạo hàm trong PHP
a. Khai báo hàm
Cú pháp : function tên_hàm()
{
Khối lệnh
}
Ví dụ :
function chao()
{
echo “Here is my function
” ;
echo “Have a good day” ;
}
Hay
function tinhtoan($x)
{
$a=10;
$x=$a**;
Return $x;
}
Chú ý là bạn không được dùng những từ khóa của php để đặt tên cho hàm. Tên hàm đặt giống như đặt tên
biến: không khỏang trắng, chỉ dùng ky tự a-z,0-9 và dấu gạch duới.
b. Gọi hàm
Gọi hàm do người dùng định nghĩa cũng giống như sử dụng hàm có sẵn trong PHP ví dụ như ta gọi 2
hàm trên như sau :
Chao()
$giatri=tinhtoan(20)
c. Truyền tham số
Hầu hết các hàm thường sử dụng 1 vài tham số đượ truyền từ bên ngoài vào, tham số truyền cvào không
định nghĩa kiểu dữ liệu mà tùy thuộc vào kiểu dữ liệu mà tham số đó nhận : tham số có 2 dạng 1 tham số
bắt buộc và tham số tùy chọn. Ví dụ sau sử dụng tham số bắt buộc là tham số mà khi gọi hàm bạn phải
truyền vào cho nó nếu không có tham số truyền vào php sẽ báo lỗi
function create_table($data)
{
echo "<table border=1>";
reset($data);
$value=current($data);
while($value)
{
echo "<tr><td>$value</td></tr>\n";
$value=next($data);
}
echo "</table>";
}
?>
<html>
<head>
<title>User Defined Functions</title>
</head>
<body>
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
20
$myarray=array("Line one","Line two","Line three.");
create_table($myarray);
?>
</body>
</html>
Ví dụ sau sử dụng tham số bắt buộc và tùy chọn (là tham số mà khi gọi hàm bạn có thể truyền vào
hay không đều được.
function create_tables($data, $border=0,$cellpading=4,$cellspacing=4)
{
echo "
echo "cellspacing=$cellspacing>";
reset($data);
$value=current($data);
while($value)
{
echo "<tr><td>$value</td></tr>\n";
$value=next($data);
}
echo "</table>";
}
?>
<html>
<head>
<title>User Defined Functions
with optional parameters</title>
</head>
<body>
$myarray=array("Line one","Line two","Line three.");
echo "<table><tr><td>";
create_tables($myarray);
echo "</td><td>";
create_tables($myarray,1,2,3);
echo "</td></tr></table>";
?>
</body>
</html>
d. Hàm có giá trị trả về
Nếu bạn khai báo hàm có giá trị trả về, bạn có thể sử dụng phát biểu return ứng với giá trị trả về cuối
hàm, nếu bên dưới phát biểu return còn 1 số câu lệnh khác, những câu lệnh này sẽ không được dịch ie khi
gặp lệnh return coi như hàm chấm dứt.
function ReturnNo($data,$i)
{
$total=0;
for($j=0;$j<$i;$j++)
{
$total+=$data[$j];
}
return $total;
}
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
21
?>
<html>
<head>
<title>User Defined Return Functions
with optional parameters</title>
</head>
<body>
$myarray=array(1,2,3,4);
echo "ReturnNo=".ReturnNo($myarray,4);
?>
</body>
</html>
e. Tham biến
Khi truyền 1 giá trị cho 1 hàm thông qua 1 biến nếu bạnmuốn lấy giá trị trả về cho biến đó thì bạn dùng
kỳ thuất tham biến bằng các thêm tóan tử & vào biến trên hàm nhận giá trị tới.
function increament(&$value,$amount=10)
{
$value=$value + $amount;
}
?>
<html>
<head>
<title>ByValue in Functions</title>
</head>
<body>
$value=10;
echo "Original value: ".$value;
increament($value);
echo "
";
echo "Last value: ".$value;
?>
</body>
</html>
6. Hàm thư viện
a. Hàm sử lý số
•
abs(số) : lấy trị tuyệt đối
echo $abs = abs(-4.2)."
"; // $abs = 4.2 (double/float)
echo $abs2 = abs(5)."
"; // $abs2 = 5 (integer)
echo $abs3 = abs(-5)."
"; // $abs3 = 5 (integer)
•
sqprt(trị số) : Lấy căn bậc 2
echo sqrt(9)."
"; // 3
echo sqrt(10)."
"; // 3.16227766 ..
•
fmod(số chia, số bị chia) : chia lấy phần dư
$x = 5;
$y = 3;
echo $r = fmod($x, $y) ."
";
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
22
•
min(danh sách trị số) : lấy giá trị nhỏ nhất trong danh sách
echo min(2, 3, 1, 6, 7)."
"; // 1
echo min(array(2, 4, 5))."
"; // 2
•
max(danh sách trị số) : lấy giá trị lớn nhất trong danh sách
echo max(1, 3, 5, 6, 7)."
"; // 7
echo max(array(2, 4, 5))."
"; // 5
•
floor(trị số) :làm tròn xuống
echo floor(4.3)."
"; // 4
echo floor(9.999)."
"; // 9
echo floor(-3.14)."
"; // -4
•
ceil(trị số): làm tròn lên
echo ceil(4.3)."
"; // 5
echo ceil(9.999)."
"; // 10
echo ceil(-3.14)."
"; // -3
•
round(trị số,n) : làm tròn đến n số lẻ: n là số dương làm tròn phần thập phân, n là số âm làm tròn
phần nguyên.
echo round(3.4)."
";
// 3
echo round(3.5)."
";
// 4
echo round(3.6)."
";
// 4
echo round(3.6, 0)."
";
// 4
echo round(1.95583, 2)."
"; // 1.96
echo round(1241757, -3)."
"; // 1242000
echo round(5.045, 2)."
"; // 5.05
echo round(5.055, 2)."
"; // 5.06
•
coutn(danh sách) : đếm số phần tử có giá trị
$a[0] = 1;
$a[1] = 3;
$a[2] = 5;
echo $result = count($a)."
";
// $result == 3
$b[0] = 7;
$b[5] = 9;
$b[10] = 11;
echo $result = count($b)."
";
// $result == 3
•
rand() : cho kết quả là 1 con số ngẫu nhiên
echo rand()."
";
echo rand()."
";
echo rand(5, 15); // cho so ngau nhieu tu 5- 15
b. Hàm sử lý chuỗi.
• Ltrim(chuỗi): cắt bỏ các khỏang trắng bên trái chuỗi.
• Chop(chuỗi): cắt bỏ các khỏang trắng bên phải chuỗi.
• Trim(Chuỗi): cắt bỏ các khỏang trắng bên phải và bên trái chuỗi.
$total=1000
echo $total . ltrim(" Wellcome") ;
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
23
echo chop("Wellcome
").$total ;
echo $total. trim("
Wellcome
").$total ;
?>
• printf(chuỗi): in ra 1 chuỗi trên trang web với định dạng cho trước
Lọai
Diễn giải
b
Biên dịch như số nguyên và in dạng binary
c
Biên dịch như số nguyên và in dạng character
d
Biên dịch như số nguyên và in dạng decimal
f
Biên dịch như số thực double và in dạng float
o
Biên dịch như số nguyên và in dạng octal
s
Biên dịch như chuỗi và in dạng string
x
Biên dịch như số nguyên và in dạng hexadecimal ký tự từ a-f
X
Biên dịch như số nguyên và in dạng hexadecimal ký tự từ A-F
$total=12.55;
echo "Total amount of order: $total
";
printf("Total amount of order làm tròn 1 số lẻ : %.1f", $total);
echo "
";
printf("Total amount of order làm tròn 2 số lẻ: %.2f", $total);
echo "
";
?>
• strupper(chuổi) : biến đỗi thành chữ hoa
• strlower(chuỗi) : biến đổi thành chữ thường
• ucfirst(chuỗi) : biến đổi ký tự đầu của câu viết hoa
• ucword(chuỗi) : biến đổi ký tự đầu của từ viết hoa
• Định dạng chuỗi : khi trong chuỗi của bạn muốn lưu ký tự đặc biết như dấu nháy’ dấu \ thì bạn
phải thêm vào trướ các dấu này 1 dấu \.Hàm AddSlashes(chuỗi) sẽ tự động tìm những ký tự lạ
trên để thêm vào dấu \. Ngược lại hàm StripSlashes(chuỗi) sẽ lọai trừ các chuỗi đã có sẵn dấu \ ra
khỏi chuỗi.
$chuoi=Addslashes("wel'lcom?e to \my site");
echo $chuoi;
echo "
";
$chuoi=StripSlashes("wel'lcom?e to \my site");
echo $chuoi;
?>
• Explode(chuỗi xác định,chuỗi cần tách) : tách 1 chuỗi thành nhiều chuỗi con lưu trữ trong 1
mảng.
• implode(chuỗi xác định,mảng chứa chuỗi cần nhập) : Nhập 1 mảng chứa các chuỗi con thành 1
chuỗi.
$chuoitach="";
$mail_array=explode("@",$chuoitach);
echo "ID : $mail_array[0] - Domain : $mail_array[1]" ;
echo "
";
$chuoinhap=implode("@",$mail_array);
echo $chuoinhap;
•
?>
strtok(chuỗi tách,chuổi phân tách) : Tách chuỗi con đầu tiên tại vị trí chuỗi phân tách.
$chuoi="Wellcome to my site";
echo "
";
$giatri=strtok($chuoi," ");
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
24
echo $giatri."
";
while($giatri!="")
{
$giatri=strtok(" ");
echo $giatri . "
";
}
•
•
•
•
•
•
?>
substr(chuỗi,vị trí, số ký tự) : trích ra n ký tự bắt đầu tại vị trí chuỗi
$str="your customer service is excellent.";
echo $str."
";
echo substr($str,1)."
"; //lấy từ vị trí số 1 cho đền hết chuỗi
echo substr($str,-9) ."
"; // bỏ 9 ký tự cuối
echo substr($str,0,4) ."
"; //lấy 4 ky tự đầu tiên
echo substr($str,4,-13) ."
"; //bỏ 4 ký tự dầu và 13 kỳ tự cuối
?>
strlen(chuỗi): cho biết chiều dài chuỗi.
$str="your customer service is excellent.";
echo "Length: " .strlen($str);
?>
strstr,strchr,stristr(chuỗi 1, chuỗi 2) : nếu tìm thấy chuỗi 2 đầu tiên trong chuỗi 1 thì trả về 1
chuỗi bắt đầu từ chuỗi 2 đến hết chuỗi 1, còn không tìm thấy thì trả về false
strrchr(chuỗi 1, chuỗi 2) : nếu tìm thấy chuỗi 2 cuối cùng trong chuỗi 1 thì trả về 1 chuỗi bắt đầu
từ chuỗi 2 đến hết chuỗi 1, còn không tìm thấy thì trả về false.
$str="your customer service is excellent.";
echo strstr($str,"is")."
";
echo strchr($str,"c")."
";
echo strrchr($str,"e")."
";
echo stristr($str,"er")."
";
?>
strpos(chuỗi 1, chuỗi 2 ) : trả về vị trí tìm thấy đầu tiên chuổi 1 trong chuỗi 2, nếu không tìm thấy
thì trả về -1
$str="your customer service is excellent.";
echo $str."
";
echo "is:".strpos($str,"is")."
";
echo "e:".strrpos($str,"e")."
";
?>
str_replace(chuỗi 1, chuỗi 2, chuỗi 3) : thay thế chuỗi 1 bằng chuỗi 2 trong chuỗi 3, hàm sẽ thay
thế tất cả các chuỗi 1 tìm thấy. Để khống chế thay thế từ 1 vị trí nhất định nào đó trong chuỗi 3 trở
về cuối chuỗi thì dùng hàm substr_replace().
$str="Do you have any jobs, please let me know as soon as possible.";
echo $str."
";
echo str_replace("job","book",$str)."
";
echo substr_replace($str,"assp.",41)."
";
?>
c. Hàm xử lý thời gian
• Date(mẫu hiễn thị)
Giáo trình Lập trình ứng dụng Web với ngôn ngữ PHP
25