Bài giảng Phát triển ứng dụng web bằng PHP - Lập trình PHP căn bản - Dương Khai Phong

Tóm tắt Bài giảng Phát triển ứng dụng web bằng PHP - Lập trình PHP căn bản - Dương Khai Phong: ...ằng', Giá_trị);  Cú pháp khai báo biến: $Tên_biến = Giá_trị;  Lưu ý:  Tên biến có thể bao gồm các Ký tự (A..Z, a..z), Ký số (0..9), _, $. (phân biệt chữ hoa, chữ thường)  Không khai báo kiểu dữ liệu (kiểu dữ liệu tự động được khởi tạo ở lần đầu tiên khi gán giá trị cho biến).  T... 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? ...ấ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 ...

pdf60 trang | Chia sẻ: havih72 | Lượt xem: 418 | Lượt tải: 1download
Nội dung tài liệu Bài giảng Phát triển ứng dụng web bằng PHP - Lập trình PHP căn bản - Dương Khai Phong, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
• GVHD: Dương Khai Phong 
• Email: khaiphong@gmail.com 
• Website:  
•  
1/ Giới thiệu tổng quan Web 
2/ Ngôn ngữ HTML và JavaScript 
3/ Ngôn ngữ PHP căn bản 
4/ Các đối tượng trong PHP 
5/ PHP và hướng đối tượng 
6/ PHP và cơ sở dữ liệu MySQL 
7/ PHP và AJAX 
8/ PHP và các hệ thống mã nguồn mở 
9/ Triển khai ứng dụng PHP 
PHẦN 3: 
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) 
a. PHP là gì? 
 PHP (recursive acronym for PHP: Hypertext Preprocessor) is a 
widely-used open source general-purpose scripting language that 
is especially suited for web development and can be embedded 
into HTML (ref:  
 PHP có cú pháp ngôn ngữ tương tự ngôn ngữ C & Perl 
 Tập tin PHP có phần mở rộng là .php 
 Là ngôn ngữ server-side script, tương tự như JSP, ASP.Net 
thực thi ở phía WebServer. 
b. Các phiên bản PHP? 
 PHP : Rasmus Lerdorf in 1994 (được phát triển để phát sinh các form đăng 
nhập sử dụng giao thức HTTP của Unix) 
 PHP 2 (1995) : Chuyển sang ngôn ngữ script xử lý trên server. Hỗ trợ CSDL, 
Upload File, khai báo biến, mảng, hàm đệ quy, câu điều kiện, biểu thức,  
 PHP 3 (1998) : Hỗ trợ ODBC, đa hệ điều hành, giao thức email (SNMP, 
IMAP), bộ phân tích mã PHP (parser) của Zeev Suraski và Andi Gutmans 
 PHP 4 (2000) : Trợ thành một thành phần độc lập cho các webserver. Parse 
đổi tên thành Zend Engine. Bổ sung các tính năng bảo mật cho PHP 
 PHP 5 (2005) : Bổ sung Zend Engine II hỗ trợ lập trình OOP, XML, SOAP 
cho Web Services, SQLite 
PHP 5.4.7 
(13/09/2012) 
c. Yêu cầu cần thiết để xây dựng ứng dụng bằng ngôn ngữ PHP? 
 server 
 thực thi mã PHP 
 cơ sở dữ liệu 
 quản lý statistic của site 
 giả lập gửi email 
 giả lập FTP server 
PHƯƠNG ÁN 1 
 Apache 
 PHP 
 MySQL 
 Webalizer 
 Mercury 
 FileZilla 
  
XAMPP for Windows 
1.8.1, 30.9.2012 
mpp-windows.html#641 
c. Yêu cầu cần thiết để xây dựng ứng dụng bằng ngôn ngữ PHP? 
PHƯƠNG ÁN 1 
PHƯƠNG ÁN 2 
PHƯƠNG ÁN 3 Cấu hình manual 
d. Ưu điểm và khuyết điểm của PHP? 
Đánh giá JSP PHP .Net 
ƯU ĐIỂM 
KHUYẾT 
ĐIỂM 
 Open source 
 Clearly code 
(HTML,JSP,..) 
 The best DBMS 
support: Oracle 
 Open source 
 Mix code 
(HTML,PHP) 
 The best DBMS 
support : MySQL 
 Code same as: C 
 Config: easy 
 Community 
support: good 
 Open source 
 Clearly code 
(HTML,.Net,..) 
 The best DBMS 
support : SQL Server 
 Run: slow 
 Support: poor 
 Config: complex 
 Support: poor 
 IDE: poor 
e. Các hệ thống xây dựng bằng PHP 
 Loại hệ thống chuyên về Quản trị nội dung, cổng thông tin 
(CMS – Content Management System / Portals) 
e. Các hệ thống xây dựng bằng PHP 
 Loại hệ thống chuyên về Diễn đàn (Forum) 
 SMF 
 PunBB 
 Phorum 
 AEF 
 Vanilla 
 UseBB 
 miniBB 
 XMB 
  
e. Các hệ thống xây dựng bằng PHP 
 Loại hệ thống chuyên về Blog: 
WordPress, Textpattern, Nucleus CMS, LifeType, 
Serendipity, Dotclear, Zomplog, FlatPress, NibbleBlog, 
Croogo,  
 Loại hệ thống về thương mại điện tử (eCommerce) 
Magento, Zen Cart, OpenCart, osCommerce, PrestaShop, 
AlegroCart, Freeway, eclime, osCSS, TomatoCar,  
 Loại hệ thống về đào tạo trực tuyến (LCMS–Learning 
Course Management System) 
Moodle, ATutor, eFront, Dokeos, Docebo, Interact, 
DrupalEd, ILIAS, Open Conference Systems, Open Journal 
Systems,  
f. Cơ chế thực thi của PHP 
2 
www.example.com 
Webserver 
Database 
Server 
Disk 
driver 
3 
4 5 
6 7 
a. Ví dụ “Hello world” 
Sử dụng phương thức echo "Nội dung" để xuất thông 
tin lên trình duyệt. 
b. Cú pháp và quy ước 
 Các phương pháp nhúng code PHP trong trang HTML: 
 Quy ước viết code PHP tương tự ngôn ngữ C: kết thúc câu 
lệnh dùng dấu chấm phẩy “;” , phân biệt chữ hoa, thường, 
 Ghi chú trong PHP: 
o // ghi chú đơn 
o /* đoạn ghi chú */ 
Thẻ mở Thẻ đóng Ghi chú 
Cần cấu hình server 
cho phép hỗ trợ 
shorthand-support  
ít dùng 
 Thường dùng 
 ít dùng 
b. Cú pháp và quy ước 
 Các phương pháp nhúng code PHP trong trang HTML: 
 Quy ước viết code PHP tương tự ngôn ngữ C: kết thúc câu 
lệnh dùng dấu chấm phẩy “;” , phân biệt chữ hoa, thường, 
 Ghi chú trong PHP: 
o // ghi chú đơn 
o /* đoạn ghi chú */ 
Thẻ mở Thẻ đóng Ghi chú 
Cần cấu hình server 
cho phép hỗ trợ 
shorthand-support  
ít dùng 
 Thường dùng 
 ít dùng 
a. Kiểu dữ liệu 
 Kiểu dữ liệu trong PHP khá đa dạng, được chia thành 2 nhóm 
chính sau: 
 Scalar (cơ bản): boolean, int, float, string,.. 
 Composite (đa hợp): array, object,.. 
 Kiểu dữ liệu trong PHP được khởi gán và chuyển đổi kiểu 
một cách tự động trong quá trình khai báo hằng và biến. 
 Việc ép kiểu dữ liệu trong PHP có thể thực hiện theo cách 
sau: 
 Tên_Biến = (Data_type) Tên_Biến; 
 settype($Tên_Biến, "Data_type"); 
Ví dụ: 
<?php 
 $So_thuc = 10.75; 
 echo (int)$So_thuc; // output: 10 
?> 
b. Hàm hàm liên quan đến kiểu dữ liệu 
 Sử dụng các hàm cơ bản sau để kiểm tra kiểu dữ liệu 
gettype is_string isset 
is_integer is_array unset 
is_double is_object empty 
Ví dụ: 
$var = "test"; 
if (isset($var)) 
 echo "Variable is Set"; 
if (empty($var)) 
 echo "Variable is Empty"; 
c. Khai báo hằng và biến 
 Cú pháp khai báo hằng: 
define('Tên_hằng', Giá_trị); 
 Cú pháp khai báo biến: 
$Tên_biến = Giá_trị; 
 Lưu ý: 
 Tên biến có thể bao gồm các Ký tự (A..Z, a..z), Ký số 
(0..9), _, $. (phân biệt chữ hoa, chữ thường) 
 Không khai báo kiểu dữ liệu (kiểu dữ liệu tự động được 
khởi tạo ở lần đầu tiên khi gán giá trị cho biến). 
 Tên biến không được bắt dầu bằng ký số (0..9). 
Ví dụ: cho biết các khai báo nào sau đây là đúng 
$size 
$drink-size $my_drink_size 
$_drinks $drink4you $$2hot4u 
$$hot4u2 
c. Khai báo hằng và biến 
 Variable Variables: tạo biến mới có tên từ giá trị của biến trước 
đó. 
$Tên_biến = "my_variable"; 
$$Tên_biến = Giá_trị; // tạo biến có tên my_variable 
Ví dụ: cho biết giá trị của các câu lệnh sau: 
 // Variable Variables 
 $varname = "my_variable"; 
 $$varname = "xyz"; 
 echo $varname.""; 
 echo $my_variable.""; 
 $myvarname = "123"; 
 $$myvarname = "456"; 
 echo ${'123'}.""; 
// tạo biến: $my_variable = "xyz“ 
// output: "xyz“ 
// output: "my_variable“ 
// tạo biến: $myvarname = “456“ 
// output: “456“ 
Sử dụng hàm isset ($tên_biến) để kiểm tra 1 biến có tồn 
tại hay không? 
a. Toán tử cơ bản 
Loại Toán tử 
new . 
. [ ] ( ) 
Toán học + - * / % ++ -- 
So sánh = != == === !== 
Luận lý && || ?: , 
Xử lý bit ! ~ > >>> 
AND OR XOR 
Gán = += -= *= /= %= 
>>= <<= &= |= ^= .= 
Ép kiểu (kiểu dữ liệu) 
b. Các hàm liên quan đến số 
abs pow decbin srand(seed) 
ceil sqrt bindec rand 
floor log dechex rand(min, max) 
round log10 hexdec  
 Ví dụ: 
<?php 
 // Generate a seed 
 $seed = (float) microtime( ) * 100000000; 
 // Seed the pseudo-random number generator 
 srand($seed); 
 // Generate some random numbers 
 print rand().""; // between 0 and getmaxrand( ) 
 print rand(1, 6).""; // between 1 and 6 (inclusive) 
?> 
c. Ví dụ toán tử số học 
 Cho biết kết quả của các ví dụ sau: 
 Ví dụ 1: 
<?php 
 $num = 5; 
 $result = $num++; 
 echo "num = ".$num." and result = ".$result.""; 
 $num = 5; 
 $result = 0; 
 $result = ++$num; 
 echo "num = ".$num." and result = ".$result.""; 
?> 
num = 6 and result = 5 
num = 6 and result = 6 
Kiến thức về toán tử: ++, -- 
c. Ví dụ toán tử số học 
 Cho biết kết quả của các ví dụ sau: 
 Ví dụ 2: 
<?php 
 $num = 'abc'; 
 echo ++$num; 
?> 
abd 
Trong PHP, toán tử ++, -- có thể áp dụng lên kiểu dữ liệu 
là chuỗi. 
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. 
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:

  • pdfbai_giang_phat_trien_ung_dung_web_bang_php_lap_trinh_php_can.pdf