Hi, Khách!
![]() | ![]() ![]() ![]() ![]() |
Vì trình duyệt định dạng chữ bằng HTML, nên khi in lên trình duyệt một chuỗi, muốn định dạng nó thì ta cũng cần dùng đến HTML, đó là một trong những lý do ta cần phải học HTML trước khi học PHP.
OK. Sau khi bạn đã có vốn về HTML thì chúng ta bắt đầu.
Trong PHP có hai lệnh cho ta in ra màn hình một chuỗi nào đó, đó là lệnhprint và echo. Như đã nói ở bài trước, chúng không có gì khác nhau (ngoại trừ một vài điểm tôi sẽ đưa ra ở cuối bài viết), và như vậy, đối với lập trình cơ bản, bạn có thể dùng lệnh nào cũng được.
Ví dụ:
Định dạng cho chữ muốn in lên trình duyệt, ta dùng HTML. Lấy ví dụ, trong HTML có thẻ<font>để định dạng màu chữ, cỡ chữ, ..., thẻ<p>để bắt đầu một đoạn mới và nó có thể định dạng căn lề cho đoạn, cũng như gán class cho đoạn chữ. Bây giờ, tôi muốn in ra một dòng chữ: "Học viện kỹ thuật Mật Mã - ksec Club" ở giữa trang, màu đỏ và cỡ chữ 25 px, tôi làm như sau:
<?php
echo "<p align='center'><font color='red' size='25px'>Học viện kỹ thuật Mật Mã - ksec Club</font></p>";
//hoặc
print "<p align='center'><font color='red' size='25px'>Học viện kỹ thuật Mật Mã - ksec Club</font></p>";
?>
Copy code
Cả hai cách đều có thể cho cùng 1 kết quả. Lưu ý, trong các thẻ của HTML giữa hai dấu ngoặc kép (" "), bạn không thể dùng một dấu ngoặc kép cho thuộc tính của thẻ, bạn bắt buộc phải dùng dấu nháy đơn hoặc bạn có thể không dùng dấu nháy đơn ('). ví dụ:echo "<p align='center'><font color='red' size='25px'>Học viện kỹ thuật Mật Mã - ksec Club</font></p>";
//hoặc
print "<p align='center'><font color='red' size='25px'>Học viện kỹ thuật Mật Mã - ksec Club</font></p>";
?>
Copy code
<?php
echo "<p align=center><font color=red size=25px>Học viện kỹ thuật Mật Mã - ksec Club</font></p>";
//hoặc
print "<p align=center><font color=red size=25px>Học viện kỹ thuật Mật Mã - ksec Club</font></p>";
?>
Copy code
Để in dấu ngoặc kép (") lên trình duyệt trong PHP, bạn phải thêm dấu gạch chéo (\) vào đằng trước, hoặc dùng hàmhtml entities:echo "<p align=center><font color=red size=25px>Học viện kỹ thuật Mật Mã - ksec Club</font></p>";
//hoặc
print "<p align=center><font color=red size=25px>Học viện kỹ thuật Mật Mã - ksec Club</font></p>";
?>
Copy code
<?php
print "\"Học viện kỹ thuật Mật Mã - ksec Club\"";
//hoặc
print ""Học viện kỹ thuật Mật Mã - ksec Club"";
?>
Copy code
Ngoài ra, bạn có thể chèn bất kì thẻ HTML nào, ví dụ thẻ xuống dòng (<br>), thẻ kẻ đường thẳng ngang (<hr>), thẻ tiêu đề (<h1>;<h2>;...) hay kể cả code javascript. Ví dụ một dòng javascript có công dụng chuyển trang như sau:print "\"Học viện kỹ thuật Mật Mã - ksec Club\"";
//hoặc
print ""Học viện kỹ thuật Mật Mã - ksec Club"";
?>
Copy code
<?php
print "<script type='text/javascript'> window.location = 'index.php' </script>";
//sẽ chuyển ngay lập tức đến trang có tên index.php trong thư mục hiện tại
?>
Copy code
Để in một hoặc nhiều biến lên trình duyệt, bạn có hai cách có thể cho cùng kết quả. Ở đây tôi lấy ví dụ với lệnh print:print "<script type='text/javascript'> window.location = 'index.php' </script>";
//sẽ chuyển ngay lập tức đến trang có tên index.php trong thư mục hiện tại
?>
Copy code
<?php
$ten = "kiên";
$tuoi = "19";
//cách 1
print "Tôi tên là: ".$ten.", năm nay tôi ".$tuoi." tuổi!";
//cách 2
print "Tôi tên là: $ten, năm nay tôi $tuoi tuổi!";
?>
Copy code
Đối với lệnh echo bạn làm tương tự. Qua ví dụ trên, ta thấy, để nối chuỗi, ta dùng dấu chấm (.). Ví dụ:$ten = "kiên";
$tuoi = "19";
//cách 1
print "Tôi tên là: ".$ten.", năm nay tôi ".$tuoi." tuổi!";
//cách 2
print "Tôi tên là: $ten, năm nay tôi $tuoi tuổi!";
?>
Copy code
Một cách nữa mà tôi rất hay sử dụng trong khi làm những trang web của tôi, đó làprint <<<EOF. Lệnh này có thể in tất cả những gì đằng sau<<<EOFlên trình duyệt (tất nhiên là sẽ được trình duyệt định dạng theo HTML) mà không phân biệt đó là kí tự gì (ngoại trừ thẻ<?phpvà?>). Ví dụ:
<?php
print <<<EOF
"Học viện Kỹ thuật Mật mã, tiền thân là Trường Cán bộ Cơ yếu Trung ương (15-4-1976), Trường Đại học Kỹ thuật Mật mã (05-6-1985) và Viện Nghiên cứu Khoa học Kỹ thuật Mật mã (20-3-1980), được thành lập ngày 17-02-1995 trên cơ sở sáp nhập Trường Đại học Kỹ thuật Mật mã và Viện Nghiên cứu Khoa học Kỹ thuật Mật mã."
EOF;
?>
Copy code
Cuối cùng. Điểm khác nhau giữa hai lệnhprint và echo:print <<<EOF
"Học viện Kỹ thuật Mật mã, tiền thân là Trường Cán bộ Cơ yếu Trung ương (15-4-1976), Trường Đại học Kỹ thuật Mật mã (05-6-1985) và Viện Nghiên cứu Khoa học Kỹ thuật Mật mã (20-3-1980), được thành lập ngày 17-02-1995 trên cơ sở sáp nhập Trường Đại học Kỹ thuật Mật mã và Viện Nghiên cứu Khoa học Kỹ thuật Mật mã."
EOF;
?>
Copy code
Thứ nhất: print là một hàm số, có trả lại kết quả: print(), còn echo thì không.
<?php
$ketqua = print 'abca'; //biến $ketqua lúc này sẽ bằng 1, khi print được thực thi thì nó sẽ trả lại giá trị 1, nếu không thì sẽ trả lại giá trị 0.
$ketqua2 = echo 'abcd'; //sai
?>
Copy code
Thứ hai, print chỉ có thể dùng với một tham số, trong khi đó, echo có thể dùng với nhiều tham số. Ví dụ:$ketqua = print 'abca'; //biến $ketqua lúc này sẽ bằng 1, khi print được thực thi thì nó sẽ trả lại giá trị 1, nếu không thì sẽ trả lại giá trị 0.
$ketqua2 = echo 'abcd'; //sai
?>
Copy code
<?php
echo 'a','b','c','d'; //dùng với 4 tham số
echo ('a'),('b'); //dùng được cả dấu ngoặc cho từng tham số
//lệnh print:
print 'a'; //đúng
print 'a','b';//sai
?>
Copy code
echo 'a','b','c','d'; //dùng với 4 tham số
echo ('a'),('b'); //dùng được cả dấu ngoặc cho từng tham số
//lệnh print:
print 'a'; //đúng
print 'a','b';//sai
?>
Copy code
Nguồn: ksec.info

Trực Tuyến:
Khách: 1