PHP cơ bản
Giới thiệu qua về PHP
- Được Rasmus Lerdorf phát triển năm 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 được phát triển từ ngôn ngữ kịch bản (script) với mục đích xây dựng
trang Web cá nhân (Personal Home Page). Sau đó đã được phát triển thành
một ngôn ngữ hoàn chỉnh và được ưa chuộng trên toàn thế giới trong việc
phát triển các ứng dụng Web.
- PHP là một ngôn ngữ thông dịch.
- Là ngôn ngữ server-side script, tươngtự như ASP, JSP,… thực thi ở phía
Server.
- Tập tin PHP có phần mở rộng là (.php)
- Cú pháp tương tự ngôn ngữ C & Perl
Thống kê sơ bộ về PHP
Nguồn:
March 2013 Web Server Survey (netcraft.com)
Một số trang phổ biến sử dụng PHP
•
Facebook.com
•
Wikipedia.org
•
Qq.com
•
Taobao.com
•
Sina.com.cn
•
Wordpress.com
•
Vk.com
•
Weibo.com
•
Babylon.com
•
Mail.ru
Nội dung:
1) Hướng dẫn xây dựng môi trường thực thi ứng dụng PHP
2) Các kiểu dữ liệu, biến, hằng, toán tử
3) Các thao tác cơ bản
4) Xây dựng hàm
5) Hàm xử lý mảng
6) Hàm xử lý chuỗi
7) Hàm về thời gian
8) Cấu trúc điều khiển
9) Thao tác với tập tin
10) Session và Cookie
11) Demo 1 vài bài tập PHP
Hàm xử lý chuỗi
Các hàm xử lý chuỗi trong PHP
addcslashes — Quote string with slashes in a C style
addslashes — Quote string with slashes
bin2hex — Convert binary data into hexadecimal representation
hop — Alias of rtrim
chr — Return a specific character
chunk_split — Split a string into smaller chunks
convert_cyr_string — Convert from one Cyrillic character set to another
convert_uudecode — Decode a uuencoded string
convert_uuencode — Uuencode a string
count_chars — Return information about characters used in a string
crc32 — Calculates the crc32 polynomial of a string
crypt — One-way string hashing
echo — Output one or more strings
Các hàm xử lý chuỗi trong PHP - 2
explode — Split a string by string
fprintf — Write a formatted string to a stream
get_html_translation_table — Returns the translation table used by htmlspecialchars and htmlentities
hebrev — Convert logical Hebrew text to visual text
hebrevc — Convert logical Hebrew text to visual text with newline conversion
hex2bin — Decodes a hexadecimally encoded binary string
html_entity_decode — Convert all HTML entities to their applicable characters
htmlentities — Convert all applicable characters to HTML entities
htmlspecialchars_decode — Convert special HTML entities back to characters
htmlspecialchars — Convert special characters to HTML entities
implode — Join array elements with a string
join — Alias of implode
Các hàm xử lý chuỗi trong PHP - 3
lcfirst — Make a string's first character lowercase
levenshtein — Calculate Levenshtein distance between two strings
localeconv — Get numeric formatting information
ltrim — Strip whitespace (or other characters) from the beginning of a string
md5_file — Calculates the md5 hash of a given file
md5 — Calculate the md5 hash of a string
metaphone — Calculate the metaphone key of a string
money_format — Formats a number as a currency string
nl_langinfo — Query language and locale information
nl2br — Inserts HTML line breaks before all newlines in a string
Ngoài ra còn rất nhiều hàm xử lý chuỗi trong PHP các bạn có thể xem them tại:
/>Các hàm xử lý chuỗi
Demo một số hàm xử lý chuỗi trong PHP
Click vào đây để xem
2, Nhóm hàm Loại bỏ ký tự ra khỏi chuỗi
•
chop( $string) : Loại bỏ những khoảng trắng ở cuối chuỗi
•
trim( $string) : Loại bỏ những khoảng trắng ở đầu và cuối của chuỗi.
•
ltrim( $string, $ ky_tu_loai_bo ) : Loại bỏ các ký tự ở đầu chuỗi, mặc định loại
bỏ tất cả khoảng trắng ở đầu chuỗi.
•
rtrim( $string, $ky_tu_loai_bo ) : Loại bỏ các ký tự ở cuối chuỗi, mặc định loại
bỏ tất cả khoảng trắng ở cuối chuỗi.
3, Liên hệ giữa mảng và chuỗi
•
explode(‘Chuỗi tách’, $string) : Tách chuỗi thành mảng bởi chuỗi tách
•
implode(“Chuỗi nối”, $mang ) : Nối các phần tử mảng để tạo thành chuỗi.
•
join( ‘Chuỗi nối’, $mang ) : Tương tự implode
4, Chuỗi và HTML
a, htmlentities( $ string)
Chuyển tất cả các ký tự có thể áp dụng cho các thẻ HTML như <, > sang dạng thực thể
của chúng, các thẻ HTML sẽ không còn tác dụng. Thường được xử dụng trong việc xử
lý dữ liệu từ người dùng nhập trước khi lưu vào database.
b, html_entity_decode( $ string)
Ngược lại với htmlentities, hàm html_entity_decode sẽ chuyển đổi tấtcả các thực
thể HTML sang những kí tự có thể dùng được của chúng.
demo
c, htmlspecialchars( $ string) : Tương tự htmlentities
d, htmlspecialchars_decode( $ string) : Tương tự html_entity_decode
e, strip_tags( $ string, $allow_tags )
Loại bỏ các thẻ HTML hoặc PHP ra khỏi chuỗi, Thường được sử dụng để xử lý dữ liệu do
người dùng nhập trước khi lưu trữ database, hiển thị văn bản dạng trích dẫn.
$allow_tags: Các thẻ cho phép giữ lại
Ví dụ: Loại bỏ các thẻ HTML ra khỏi chuỗi $str, cho phép giữ lại thẻ <b> và <i>
$str = strip_tags( $str, '<b><i>' );
5. Các hàm tách chuỗi con
a, substr( $string, start, length ): tách chuỗi con từ một chuỗi
start: Vị trí bắt đầu tách
length: Chiều dài chuỗi cần tách
b, strstr( $string, $ky_tu_cho_truoc ): Tách ra một chuỗi con từ vị trí đầu tiên
của chuỗi cho trước cho đến cuối chuỗi.
C, strops( $str, $chuoi_tim ): Tìm vì trí xuất hiện đầu tiên của $chuoi_tim
trong chuỗi $str.
Hàm xử lý chuỗi
Một số hàm khác
•
strtolower( $str ) : Chuyển tất cả ký tự sang chữ thường.
•
strtoupper($string ): Chuyển tất cả ký tự sang chữ in hoa.
•
ucfirst( $string ): Viết hoa kí tự đầu tiên của chuỗi.
•
ucwords( $string ): Viết hoa kí tự đầu tiên của mỗi từ.
•
var_dump — Hàm này rất hữu dụng khi ta cần sửa các logic error . Khi cần biết 1 biến
đang chứa những gì bên trong và kiểu dữ liệu của nó ta cứ var_dump in nó ra xem xét
Ví dụ:
<?php
$a = array(1.2, 2.3, array("a", "b", "c"));
var_dump($a);
?>
Kết quả:
array(2) { [0]=> float(1.2) [1]=> array(3) { [0]=>
string(1) "a" [1]=> string(1) "b" [2]=> string(1)
"c" } }
<?php
$var='';
//ThiswillevaluatetoTRUEsothetextwillbeprinted.
if(isset($var)){
echo"ThisvarissetsoIwillprint.";
}
//Inthenextexampleswe'llusevar_dumptooutput
//thereturnvalueofisset().
$a="test";
$b="anothertest";
var_dump(isset($a));//TRUE
var_dump(isset($a,$b));//TRUE
unset($a);
var_dump(isset($a));//FALSE
var_dump(isset($a,$b));//FALSE
$foo=NULL;
var_dump(isset($foo));//FALSE
?>
strcmp(string1,string2): Hàm so sánh chuỗi, phân biệt Hoa – thường
strcasecmp(string1,string2) : Hàm so sánh chuỗi, không phân biệt hoa thường
Giá trị trả về:
0 – nếu 2 chuỗi giống nhau
<0 – nếu string1 ngắn hơn string2
>0 – nếu string1 nhiều hơn string2
<?php
echo strcasecmp("Hello world!","HELLO WORLD!");
?>
Sẽ ra kết quả là 0
Xem them tại: />Hàm về thời gian
1 - Hiển thị ngày tháng và thời gian hiện tại:
<?php
echo date("F j, Y, g:i a") . "<br>"; // March 18, 2013, 4:35 pm
echo date("m.d.y") . "<br>"; // 03.18.13
echo date("j, n, Y") . "<br>"; // 18, 3, 2013
echo date("Ymd") . "<br>"; // 20130318
echo date('h-i-s, j-m-y, it is w Day') . "<br>"; // 04-35-17, 18-03-13, 3531 3517 1 Monpm13
echo date('\i\t \i\s \t\h\e jS \d\a\y.') . "<br>"; // it is the 18th day
echo date("D M j G:i:s T Y") . "<br>"; // Mon Mar 18 16:35:17 KRAT 2013
echo date('H:m:s \m \i\s\ \m\o\n\t\h') . "<br>"; // 16:03:17 m is month
echo date("H:i:s") . "<br>"; // 16:35:17
?>
Các định dạng ngày tháng trong PHP
dd/mm/yyyy H:I:s = Ngày/ Tháng/ Năm Giờ : Phút: Giây
yyyy/mm/dd H:I:s = Năm/ Tháng/ Ngày Giờ:Phút:Giây
mm/dd/yyyy H:I:s = Tháng/ Ngày/ Năm Giờ:Phút:giây
lấy ra ngày hiện tại :
<?php echo date(“d/m/Y h:i:s”); ?>
Kết quả nhận được:
18/03/2013 04:15:52
Hàm về thời gian
<?php
// Asia/Krasnoyarsk, khi chưa đặt lại giá trị thời gian mặc định của vị trí thì giá
trị này tùy thuộc vào cài đặt PHP ở vị trí nào.
echo date_default_timezone_get();
echo date("H:i:s"); // 20:06:55
// Đặt thời gian của vị trí mặc định trong PHP là London
date_default_timezone_set(‘Asia/Saigon');
echo date_default_timezone_get(); // Europe/London
echo date("H:i:s"); // 13:06:55
?>
Demo
Hàm về thời gian
checkdate ( int $thang , int $ngay , int $nam ): Kiểm tra tính hợp lệ của ngày, tháng và năm
nhập vào tương ứng với các biến $ngay, $thang và $nam. GiátrịtrảvềlàTruehoặcFalse
date_default_timezone_get(): LấyTimeZoneđượcsửdụngchotoànbộscriptPHP
hiệnhành.GiátrịtrảvềlàtênTimezoneđangđượcsửdụng.Vídụ:
“America/Los_Angeles”,“Europe/London”,“Europe/Paris”,“Asia/Ho_Chi_Minh”,…
date_default_timezone_set(): Thiết đặt Timezone cho tất cả các hàm thời gian trong script
PHP hiện hành. Tham khảo bảng timezone
time(): Lấy thời gian hiện tại trên server dựa trên Timezone hiện hành. Giá trị trả về là thời
gian dạng Unix Timestamp
Cấu trúc điều khiển
• Điều kiện if
• Rẽ nhánh switch case
• Vòng lặp for
• Vòng lặp while
• Vòng lặp do While
• Vòng lặp foreach
• Từ khóa break, continue
Điều kiện if
If(biểu thức điều kiện){
Khối lệnh 1
}Else{
Khối lệnh 2
}
Ví dụ:
If($a > $b){
echo “a>b”;
}else{
echo “a < b”;
}