Phát biểu switch

Một phần của tài liệu TỔNG QUANG VỀ PHP MYSQL (Trang 27 - 44)

V. Nhập môn l ập trình php

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

<?php $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 biu vòng lp 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.

<?php $qtty=5; $price=5000; while($qtty>0) { echo "<tr><td>".$qtty."</td><td>".$qtty*$price."</td></tr>"; $qtty--; } ?> f. Phát biu vòng lp 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 <?php $qtty=5; $price=5000; do { echo "<tr><td>".$qtty."</td><td>".$qtty*$price."</td></tr>"; $qtty--;

while($qtty>0) ?>

g. Phát biu vòng lp 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.

<?php $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 khi cu 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.

<?php $qtty=5; $price=5000; while($qtty>0) { echo "<tr><td>".$qtty."</td><td>"; echo $qtty*$price."</td></tr>"; $qtty--; if ($qtty==3) exit; } ?> 5. To 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 <br>” ; echo “Have a good day” ;

}

Hay

function tinhtoan($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. Gi 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. Truyn 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

<?php

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> <?php

$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.

<?php

function create_tables($data, $border=0,$cellpading=4,$cellspacing=4) {

echo "<table border=$border cellpading=$cellpading "; 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> <?php

$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. <?php function ReturnNo($data,$i) { $total=0; for($j=0;$j<$i;$j++) { $total+=$data[$j]; } return $total; } ?> <html> <head>

<title>User Defined Return Functions with optional parameters</title> </head> <body> <?php $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.

} ?> <html> <head> <title>ByValue in Functions</title> </head> <body> <?php $value=10;

echo "Original value: ".$value; increament($value);

echo "<br>";

echo "Last value: ".$value; ?> </body> </html> 6. Hàm thư vin a. Hàm s lý s • abs(số) : lấy trị tuyệt đối

echo $abs = abs(-4.2)."<br>"; // $abs = 4.2 (double/float) echo $abs2 = abs(5)."<br>"; // $abs2 = 5 (integer) echo $abs3 = abs(-5)."<br>"; // $abs3 = 5 (integer)

• sqprt(trị số) : Lấy căn bậc 2

echo sqrt(9)."<br>"; // 3

echo sqrt(10)."<br>"; // 3.16227766 ..

• fmod(số chia, số bị chia) : chia lấy phần dư

$x = 5; $y = 3;

echo $r = fmod($x, $y) ."<br>";

• min(danh sách trị số) : lấy giá trị nhỏ nhất trong danh sách

echo min(2, 3, 1, 6, 7)."<br>"; // 1 echo min(array(2, 4, 5))."<br>"; // 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)."<br>"; // 7 echo max(array(2, 4, 5))."<br>"; // 5 • floor(trị số) :làm tròn xuống echo floor(4.3)."<br>"; // 4 echo floor(9.999)."<br>"; // 9 echo floor(-3.14)."<br>"; // -4 • ceil(trị số): làm tròn lên echo ceil(4.3)."<br>"; // 5 echo ceil(9.999)."<br>"; // 10 echo ceil(-3.14)."<br>"; // -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)."<br>"; // 3 echo round(3.5)."<br>"; // 4 echo round(3.6)."<br>"; // 4 echo round(3.6, 0)."<br>"; // 4 echo round(1.95583, 2)."<br>"; // 1.96 echo round(1241757, -3)."<br>"; // 1242000 echo round(5.045, 2)."<br>"; // 5.05 echo round(5.055, 2)."<br>"; // 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)."<br>"; // $result == 3

$b[0] = 7; $b[5] = 9; $b[10] = 11;

echo $result = count($b)."<br>"; // $result == 3

• rand() : cho kết quả là 1 con số ngẫu nhiên

echo rand()."<br>"; echo rand()."<br>";

echo rand(5, 15); // cho so ngau nhieu tu 5- 15

b. Hàm s lý chui.

• 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.

<?php

$total=1000

echo $total . ltrim(" Wellcome") ; 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

<?php

$total=12.55;

echo "Total amount of order: $total<br>";

?>

• 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.

<?php

$chuoi=Addslashes("wel'lcom?e to \my site"); echo $chuoi;

echo "<br>";

$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.

<?php

$chuoitach="Student@yahoo.com.vn"; $mail_array=explode("@",$chuoitach);

echo "ID : $mail_array[0] - Domain : $mail_array[1]" ; echo "<br>";

$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.

<?php $chuoi="Wellcome to my site"; echo "<br>"; $giatri=strtok($chuoi," "); echo $giatri."<br>"; while($giatri!="") { $giatri=strtok(" "); echo $giatri . "<br>"; } ?>

• substr(chuỗi,vị trí, số ký tự) : trích ra n ký tự bắt đầu tại vị trí chuỗi

<?php

$str="your customer service is excellent."; echo $str."<br>";

echo substr($str,1)."<br>"; //lấy từ vị trí số 1 cho đền hết chuỗi echo substr($str,-9) ."<br>"; // bỏ 9 ký tự cuối

echo substr($str,0,4) ."<br>"; //lấy 4 ky tự đầu tiên

echo substr($str,4,-13) ."<br>"; //bỏ 4 ký tự dầu và 13 kỳ tự cuối ?>

• strlen(chuỗi): cho biết chiều dài chuỗi.

<?php

?>

• 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.

<?php

$str="your customer service is excellent."; echo strstr($str,"is")."<br>";

echo strchr($str,"c")."<br>"; echo strrchr($str,"e")."<br>"; echo stristr($str,"er")."<br>"; ?>

• 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

<?php

$str="your customer service is excellent."; echo $str."<br>";

echo "is:".strpos($str,"is")."<br>"; echo "e:".strrpos($str,"e")."<br>"; ?>

• 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().

<?php

$str="Do you have any jobs, please let me know as soon as possible."; echo $str."<br>"; echo str_replace("job","book",$str)."<br>"; echo substr_replace($str,"assp.",41)."<br>"; ?> c. Hàm x lý thi gian • Date(mẫu hiễn thị)

echo date("jS F Y");

Bảng định dạng thời gian

Code Diễn giải

a Buổi sáng /chiều bằng 2 ký tự thuờng am/pm A Buổi sáng /chiều bằng 2 ký tự hoa AM/PM d Day (01-31) ngày trong tháng 2 ký tự D Day (Mon-Sun) ngày trong tuần F Tháng trong năm với tên tháng đầy đủ

g Hour (1-12) giờ trong ngày không kèm 0 nếu 1 ký tự G Hour (0-23) giờ trong ngày không kèm 0 nếu 1 ký tự h Hour (01-12) giờ trong ngày gồm 2 ký tự

H Hour (00-23) giờ trong ngày gồm 2 ký tự i Minutes(01-59) phút bao gồm 2 ký tự

j Day (01-31) ngày trong tháng không kèm 0 nếu 1 ký tự l Day (Monday-Sunday) ngày trong tuần đầy đủ

L Năm nhuận trả về 1, năm thường trả về 0 m Month(01-12) tháng bao gồm 2 ký tự

S thêm vào 2 ký tự như :st,nd,rd,th theo sau dạng ngày 2 ký tự t Trả vể tổng số ngày trong tháng

w Day(0-6) : 0=Sunday….6=Sartuday y Năm định dạng 2 con số

Y Năm định dạng 4 con số

z Ngày trong năm địnhtheo số (0-365)

• checkdate(tháng, ngày,năm) : kiểm tra giá trị nhập vào có phải là ngày hay không nếu đúng là ngày thì True (1) còn không là False

echo checkdate(12, 31, 2000)."<br>"; echo checkdate(2, 29, 2001)."<br>";

• DATE_FORMAT(ngày tháng, mẫu hiển thị) : thuờng dùng hàm n2y trong câu select đểđịnh dạng lại ngày tháng khi lấy dữ liệu từ MySQL.

Select DATE_FORMAT(OrderDate, ‘%m-%d-%Y’) From orders

Bảng định dạng thời gian cho hàm DATE_FORMAT

Code Diễn giải

%M Tháng đầy đủ %W ngày trong tuần đầy đủ %D ngày trong tháng dạng số có thứ bậc (1 st) %Y Năm 4 con số %y Năm 2 con số %a Ngày trong tuấn viết tắt %d ngày trong tháng 2 con số

%e ngày trong tháng không kèm số 0 vơi 1 ký tự %m Tháng 2 con số %c Tháng không kèm số 0 với 1 ký tự %b Tháng viết tắt %j Ngày thứ mấy trong năm (1-365) %H giờ 2 con số (00-23) %k Giờ không kèm số 0 với 1 ký tự %h Giờ 2 con số (1-12) %i Phút không kèm số 0 với 1 ký tự %r giờ dầy đủ với định dạng 12 giờ (hh:mm:ss AM/PM) %T giờ dầy đủ với định dạng 12 giờ (hh:mm:ss) %S Giây 2 con số %s Giây không kèm số 0 với 1 ký tự %p AM hay PM

%w Ngay trong tuan dạng số (0-6)

<?php

$nam=date("Y"); $tuoi=$nam -1972;

echo “Tuoi cua ban : $tuoi”; ?>

d. Các hàm thư vin khác

• ereg(mẫu kiểm tra, giá trị) : kiểm tra giá trị có đúng theo mẫu cho trước hay không

Kiểm tra ngày tháng nhập vào có đúng theo mẫu cho trướ hay không $date="1999-12-3";

//kiem tra ngay thang co dung mau nhu sau hay khong if (ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $date, $regs)) { echo "$regs[3].$regs[2].$regs[1]";

} else {

echo "Invalid date format: $date"; }

Kiểm tra email nhập đúng hay sai $email=”hoasen@yahoo”;

if (!ereg("^[a-zA-Z0-9_]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$", $email)) {

echo "That is not a valid email address. Please return to the" ." previous page and try again.";

exit; }

• print(chuỗi): in 1 chuỗi ra màn hình

<?php

print("Hello World<br>");

print "print() also works without parentheses."; print "This spans

multiple lines. The newlines will be output as well";

print "This spans\nmultiple lines. The newlines will be\noutput as well."; print "escaping characters is done \"Like this\".";

// You can use variables inside of a print statement $foo = "foobar";

$bar = "barbaz";

print "foo is $foo"; // foo is foobar // You can also use arrays

$bar = array("value" => "foo");

print "this is {$bar['value']} !"; // this is foo !

// Using single quotes will print the variable name, not the value print 'foo is $foo'; // foo is $foo

// If you are not using any other characters, you can just print variables print $foo; // foobar

?>

VI. Qun tr MYSQL

1. Kết ni ti Server MySQL

Nhập tên connection, và nhập các giá trị như trên, password lần đầu tiên là rỗng . Click nút Test Connection để kiểm tra kết nối tới server. Nếu hiện lên thông báo sau là thành công

2. To Database

Click chuột phải vào tên server chọn New Database

Bạn nhập vào tên Database, chọn Character set là UTF-8 để hỗ trợ dữ liệu tiếng việt có dấu. lick OK

3. To bng

Click chuột phài vào mục Tables trong database QuanLydichvu, chọn New Table

Nhập vào Tên Filed và các thuộc tính liên quan:

• Name : nhập tên field (không khỏang trắng, chỉ gòm các kỳ tự A-Z 0-9 và dấu _) • Type : Kiểu dữ liệu

• Length : Chiều dài tối đa của dữ liệu trong field này. • Decimal : nếu chứa số thì xác định bao nhiêu số lẻ

• Allow Null : cho phép để rỗng field này hay không khi nhập 1 record mới • Defaut : Giá trị mặc định ban đầu khi nhập record mới

• Comment : Chú giải của field

• Character Set : chọn UTF8 nếu dữ liệu chứa tiếng việt • Collation : Chọn UTF_General_Ci

Khi nhập xong các Field chọn 1 field làm trường khóa chính bằng cách đưa con trỏ vào tên field tương ứng click nút Primary Key trên Toolbar. Chọn Save , cửa sổ xuất hiện như hình dưới

Bạn nhập tên table rồi click OK là xong

4. Import D liu t Database khác

Click chuột phải vào mục Table , chọn Import Wizard

Click phím next, cửa sổ sau xuất hiện

Click vào nút … để chọn tập tin DB , Đánh dấu mục Select All để chọn tất cả các bảng. Click phím next, cửa sổ sau xuất hiện

Đánh dấu check vào mục NEW để tạo mới các bảng này trong database mới. Click phím next, cửa sổ sau xuất hiện:

Nếu bạn muốn điều chỉnh cấu trúc từng bảng thì thao tác trên cửa sổ này. Click phím next, cửa sổ sau xuất hiện:

Đánh dấu chọn mục Copy . Click phím next, cửa sổ sau xuất hiện

Một phần của tài liệu TỔNG QUANG VỀ PHP MYSQL (Trang 27 - 44)

Tải bản đầy đủ (PDF)

(64 trang)