Phát triển ứng dụng Web bằng PHP - Phần 3: Lập trình PHP căn bản

1. Giới thiệu

2. Cấu trúc PHP

3. Kiểu dữ liệu, hằng và biến

4. Các phép toán trong PHP

5. Các cấu trúc điều khiển

6. Hàm trong PHP

7. Mảng (array)

pdf60 trang | Chuyên mục: PHP | Chia sẻ: dkS00TYs | Lượt xem: 2345 | Lượt tải: 1download
Tóm tắt nội dung Phát triển ứng dụng Web bằng PHP - Phần 3: Lập trình PHP căn bản, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 dụ sau: 
 Ví dụ 3: 
<?php 
 $a = 10; 
 $b = $a; 
 $c = &$a; 
 $b = 15; 
 $c = 20; 
 echo "a = ".$a." , b = ".$b." , c = ".$c; 
?> 
a = 20 , b = 15 , c = 20 
Sử dụng biến tham chiếu trong PHP. 
c. Ví dụ toán tử số học 
 Cho biết kết quả của các ví dụ sau: 
 Ví dụ 3: 
<?php 
 $a = 10; 
 $b = $a; 
 $c = &$a; 
 $b = 15; 
 $c = 20; 
 echo "a = ".$a." , b = ".$b." , c = ".$c; 
?> 
a = 20 , b = 15 , c = 20 
Sử dụng biến tham chiếu trong PHP. 
d. Các hàm liên quan đến chuỗi 
 Toán tử nối chuỗi: dùng dấu chấm “.” 
$str = "Hello"." World"; // $str = “Hello World” 
 Phân biệt dấu nháy đơn và nháy kép 
 Hàm xử lý chuỗi thông dụng 
printf trim strtolower 
str_pad str_replace strtoupper 
strlen substr strcasecmp … 
$user = "Phong"; 
print 'Line 1: Hi $user '; 
print "Line 2: Hi $user "; 
print 'Line 3: Hi '.$user.""; 
 print 'Line 4: Hi '.'$user '; 
// Line 1: Hi $user 
// Line 2: Hi Phong 
// Line 3: Hi Phong 
// Line 4: Hi $user 
e. Ví dụ về chuỗi 
 Cho biết kết quả của các ví dụ sau: 
 Ví dụ 1: 
<?php 
 $a = 1; 
 echo "Line 1: Biến \$a có giá trị là $a "; 
 echo 'Line 2: Biến \$a có giá trị là $a '; 
?> 
Line 1: Biến $a có giá trị là 1 
Line 2: Biến \$a có giá trị là $a 
e. Ví dụ về chuỗi 
 Cho biết kết quả của các ví dụ sau: 
 Ví dụ 2: 
<?php 
$s = <<<BAITHO 
Em bảo: anh đi đi! 
Sao anh không ở lại? 
Em bảo anh: đứng đợi! 
... 
BAITHO; 
echo $s; 
?> 
Em bảo: anh đi đi! 
Sao anh không ở lại? 
Em bảo anh: đứng đợi! 
... 
e. Ví dụ về chuỗi 
 Cho biết kết quả của các ví dụ sau: 
 Ví dụ 2: 
<?php 
 $tax = 0.075; 
 printf('The tax costs $%10.2f ', $tax); 
 $zip = '6520'; 
 printf("ZIP is %05d ", $zip); 
 $min = -40; $max = 40; 
 printf("The value is between %+d and %+d degrees Celsius.", 
$min, $max); 
?> 
The tax costs $ 0.07 
ZIP is 06520 
The value is between -40 and +40 degrees Celsius. 
Cấu trúc điều kiện 
Cấu trúc lặp 
If .. Else .. 
Switch .. Case .. 
For .. 
While .. 
Do .. While 
Tham khảo thêm: foreach, break, continue 
a. Khai báo hàm 
function functionName ([parameter1]...[,parameterN]) 
{ 
 statement[s] ; 
 [return ….. ;] 
} 
Trong đó: 
 functionName: tên hàm 
 parameter: danh sách tham số 
 return: giá trị hàm trả về nếu có 
a. Khai báo hàm 
 Ví dụ: xây dựng hàm tính giai thừa n! 
<?php 
 function calFactorial($n) 
 { 
 $result = 1; 
 for($i=2 ; $i<=$n ; $i++) 
 $result *=$i; 
 return $result; 
 } 
 $n = 4; 
 echo $n.'!= '.calFactorial($n); 
?> 
b. Hàm – phạm vi biến 
 Ví dụ: cho biết kết quả của đoạn lệnh sau 
<?php 
function doublevalue($var=10) 
 { 
 global $temp; 
 $temp = $var * 2; 
 } 
 $temp = 5; 
 doublevalue(); 
 echo "\$temp is: $temp"; 
?> 
Dùng từ khoá global để xác định phạm vi biến toàn cục 
$temp is: 20 
c. Hàm – tham trị và tham biến 
 Ví dụ: cho biết kết quả của đoạn lệnh sau 
<?php 
 function doubleVal(&$var) 
 { 
 $var = $var * 2; 
 } 
 $a = 5; 
 doubleVal($a); 
 echo "\$a is: $a"; 
?> 
Dùng từ toán tử & để xác định tham số là tham biến 
$temp is: 20 
a. Khai báo mảng 
 Mảng trong PHP có thể được khai báo theo 2 cách như sau: 
 Enumerative Array 
 Associative Array 
// Enumerative Array 
$words = array("Web", "Database", "Applications"); 
echo $words[0]."";; 
$numbers = array(1=>"one", "two", "three", "four"); 
echo $numbers[1].""; 
// Associative Array 
$array = array("first"=>1, "second"=>2, "third"=>3); 
echo $array["second"].""; 
Phần tử đầu tiên trong mảng có chỉ số index = 0 
b. Các hàm liên quan đến mảng 
$dinner = array( 'Sweet Corn','Lemon Chicken', 'Braised Bamboo'); 
sort($dinner); 
print "I want $dinner[0] and $dinner[1]."; 
$dishes = count($dinner); 
print $dishes; 
• var_dump ($array) : xuất nội dung thông tin mảng 
• is_array(array) : kiểm tra mảng 
• count(array) : số lượng phần tử 
• min(array) : phần tử nhỏ nhất trong mảng 
• max(array) : phần tử lớn nhất trong mảng 
• reset(array) : khởi tạo lại mảng 
• array_push(array, elements) : thêm phần tử cuối mảng 
• array_pop(array) : lấy phần tử cuối mảng 
• array_unshift(array, elements) : thêm phần tử đầu mảng 
• array_shift(array) : lấy phần tử đầu mảng 
• array_merge(array, array) : trộn 2 mảng 
• shuffle(array) : sắp xếp mảng ngẫu nhiên 
• array_reverse : đảo mảng 
• sort(array, flag) : sắp xếp mảng 
flag = {sort_regular, sort_numeric, sort_string, sort_locale_string} 
• sort 
• asort 
• rsort 
• ksort 
• krsort 
• arsort 
• usort 
• uasort 
• uksort 
 Ví dụ: 
c. Bài toán liên quan đến mảng 
1. Xây dựng hàm nhập / xuất mảng 
2 Viết hàm tìm phần tử max, min trong mảng 
3. Sắp xếp mảng tăng dần, giảm dần 
4. Tìm phần tử có giá trị x trong mảng 
5. Cập nhật giá trị cho phần tử có giá trị x trong mảng 
6. Xoá phần tử có giá trị x trong mảng 
 Mảng 1 chiều 
 Mảng 2 chiều: 
1. Xây dựng hàm nhập / xuất mảng 
2. Xuất các phần tử trên đường chéo chính, chéo phụ. 
3. Sắp xếp mảng giảm dần theo chiều kim đồng hồ.. 
ĐH CÔNG NGHỆ THÔNG TIN  
39 
 Họ tên: 
 Mã SV: 
 Lớp: 
 Khoá: 
 Email: 
01 02 … 19 20 
A 
B 
C 
D 
Câu 1: Dòng code PHP nào sau đây không 
hợp lệ? 
A. $_10 
B. ${“MyVar”} 
C. &$something 
D. $10_somethings 
Câu 2: Cho biết kết quả của đoạn lệnh sau? 
<?php 
define("myvalue","10"); 
$myarray[10]= "Dog"; 
$myarray[] ="Human"; 
$myarray['myvalue'] = "Cat"; 
$myarray["Dog"]= "Cat"; 
print "The value is:"; 
print $myarray[myvalue]."\n"; 
?> 
A. The value is: Dog 
B. The value is: Cat 
C. The value is: Human 
D. $10_somethings 
Câu 3: Cho biết kết quả của đoạn lệnh sau? 
<?php 
$a = 10; $b = 20; $c = 4; 
$d = 8; 
$f = $c + $d * 2; 
$g = $f % 20; 
$h = $b - $a + $c + 2; 
print $h; 
?> 
A. 42 
B. 16 
C. 18 
D. Tất cả đều sai 
Câu 4: Cho biết giá trị cần gán cho các biến $a, $b, $c để 
đoạn lệnh xuất dòng chữ “Hello, World!”? 
<?php 
 $string= "Hello, World!"; 
 $a =???; $b =???; $c =???; 
 if($a) { 
 if($b &&!$c){ echo "Goodbye Cruel World!"; 
 } else if(!$b &&!$c) { echo "Nothing here"; } 
 } else { 
 if(!$b) { 
 if(!$a && (!$b && $c)) {echo"Hello, World!"; 
 } else { echo"GoodbyeWorld!"; } 
 } else { echo "Not quite."; } 
 } 
?> 
A. false, true, false 
B. true, true , false 
C. false, true, true 
D. false, false, true 
Câu 5: Cho biết kết quả của đoạn lệnh sau? 
<?php 
$array = '0123456789ABCDEFG'; 
$s =''; 
for ($i = 1; $i < 50; $i++) { 
 $s .=$array[rand(0,strlen ($array) - 1)]; 
} 
echo $s; 
?> 
A. Xuất chuỗi có 49 ký tự ngẫu nhiên 
B. Xuất chuỗi có 49 ký tự ‘G’ 
C. Xuất chuỗi có 50 ký tự ngẫu nhiên 
D. Lỗi do $array không phải là mảng. 
Câu 6: Cho biết kết quả của đoạn lệnh sau? 
<?php 
$array = array ('1', '2'); 
foreach ($array as $k => $v) { 
 echo ($k+$v)." "; 
} 
?> 
A. 1 2 
B. 0 1 
C. 1 3 
D. Tất cả đều sai 
Câu 7: Hàm nào dùng đảo ngược nội dung 
mảng? 
<?php 
 $array = array ('a', 'b','c', 'd'); 
?> 
 output: 'd', 'c','b', 'a' 
A. rsort() 
B. array_reverse() 
C. Cả A và B đều đúng 
D. Tất cả đều sai 
Câu 8: Hàm nào dùng đảo ngược nội dung 
mảng? 
<?php 
 $array = array (0.1=>'a', 0.2=>'b'); 
 echo count($array); 
?> 
A. 1 
B. 2 
C. 0 
D. Đoạn lệnh sai cú pháp 
Câu 9: Cho biết kết quả của đoạn lệnh sau? 
<?php 
$array = array (1, 2, 3, 5, 8, 13, 21); 
$sum= 0; 
for ($i= 0;$i < 3;$i++) { 
 $sum+=$array[$array[$i]]; 
} 
echo $sum; 
?> 
A. NULL 
B. 10 
C. 19 
D. Đoạn lệnh báo lỗi 
Câu 10: Cho câu lệnh thay cho từ key để xuất 
ra chuỗi “php” ? 
<?php 
$alpha = 'abcdefghijklmnopqrstuvwxyz'; 
$letters =array(15, 7, 15); 
foreach($letters as $val) { 
 key 
} 
?> 
A. echo chr($val); 
B. echo substr($alpha, $val, 2); 
C. echo $alpha{$val}; 
D. echo $alpha{$val+1}; 
Câu 11: Câu lệnh nào dùng để nối 2 chuỗi? 
A. $s1 +$s2 
B. "{$s1}{$s2}" 
C. $s1.$s2 
D. Cả B và C đều đúng 
Câu 12: Cho chuỗi $s = "phong@gmail.com", 
câu lệnh nào dùng để trích ra chuỗi con 
"gmail.com"? 
A. substr($s,strpos($s, "@")); 
B. strstr($s,"@"); 
C. substr($s,strpos($s, "@")+1); 
D. strrpos($s, "@"); 
Câu 13: Cho biết kết quả của câu lệnh sau? 
echo 'Testing ' . 1+ 2 . '45'; 
A. Testing 1245 
B. Testing 345 
C. Testing 1+245 
D. 245 
Câu 14: Câu lệnh nào sau đây trả về true? 
A. 'top'==0 
B. 123 =='123' 
C. '1top' =='1' 
D. Cả A và B đều đúng 
Câu 15: cho biết kết quả của đoạn lệnh sau? 
<?php 
function hello($who = "World") 
{ 
 echo "Hello $who "; 
} 
hello(hello()); 
?> 
A. Hello World 
B. Hello World Hello 
C. Hello Hello World 
D. Tất cả đều sai 
Câu 16: cho biết kết quả của đoạn lệnh sau? 
<?php 
for ($i = 0; $i < 10; $i++) { 
 for ($j = 0; $j < 3; $j++) { 
 if (($j + $i) % 5 == 0) { 
 break 2; 
 } 
 } 
} 
echo $j + $i; 
?> 
A. 0 
B. 1 
C. 2 
D. Tất cả đều sai 
Câu 17: Cho biết kết quả của câu lệnh sau? 
<?php 
 $a = array (1 => 1, 2 => 2, 0 => 3); 
 echo $a[0]; 
?> 
A. 1 
B. 2 
C. 3 
D. Tất cả đều sai 
Câu 18: Chọn khai báo mảng b sao cho kết 
quả xuất ra là bool(true)? 
<?php 
$a = array (1,2,3); 
key 
var_dump ($a == $b); 
?> 
A. $b = array (1 => 2, 2 => 3, 0 => 1); 
B. $b = array (2 => 3, 1 =>2, 0 => 1); 
C. $b = array ('0' => 1, '1' =>2, '2' => 3); 
D. Tất cả đều đúng 
Câu 19: Hàm nào thay thế từ key sau đây làm 
cho giá trị a cập nhật là 3? 
<?php 
key 
var_dump ($a == $b); 
$a = 5; 
f($a); 
echo $a; 
?> 
A. function f($a){global $a;$a = 3;return $a;} 
B. function f(&$a){$a = 3;return $a;} 
C. Cả A và B đều đúng 
D. Cả A và B đều sai 
Câu 20: Chọn phát biểu đúng thay cho từ key 
sao cho kết quả xuất ra là ‘def’ ? 
<?php 
 $s = 'abcdef'; 
 for ($i = 0; $i < key; $i++) { 
 if ($s[$i] > 'c') { 
 echo $s[$i]; 
 } 
 } 
?> 
A. strlen ($s) 
B. count ($s) 
C. $s.length 
D. $s.count 

File đính kèm:

  • pdfPhát triển ứng dụng Web bằng PHP - Phần 3_Lập trình PHP căn bản.pdf