Ở bài Mở đầu mình đã nói về giới thiệu qua về PHP và MySQL cũng như phương pháp cài đặt. Hôm nay chúng ta sẽ đi vào tìm hiểu cách dùng PHP cũng như giới thiệu thêm về các kiểu dữ liệu. Bài viết còn nhiều thiếu sót bạn có thể tìm hiểu thêm tại : http://daotaolaptrinh.edu.vn/
Có 4 cách để dùng PHP:
1. <? echo ("this is the simplest, an SGML processing instruction\n"); ?>
2. <?php echo("if you want to serve XML documents, do like this\n"); ?>
3. <script language="php">
echo ("some editors (like FrontPage) don't like processing instructions");
</script>
4. <% echo ("You may optionally use ASP-style tags"); %>
<%= $variable; # This is a shortcut for "<%echo .." %>
Cách 1 chỉ có thể sử dụng nếu những tag ngắn được cho phép sử dụng. Có thể sửa short_open_tag trong cấu hình của php hoặc biên dịch file php với lựa chọn cho phép dùng các tag ngắn.
Tương tự như vậy, cách thứ 4 chỉ có tác dụng nếu asp_tag được đặt trong file cấu hình của PHP
PHP cho phép hỗ trợ các kiểu chú thích của cả C, C++ và Unix shell. VD:
<?php
echo "This is a test"; // This is a one-line c++ style comment
/* This is a multi line comment
yet another line of comment */
echo "Another Test"; # This is shell-style style comment
?>
2. <?php echo("if you want to serve XML documents, do like this\n"); ?>
3. <script language="php">
echo ("some editors (like FrontPage) don't like processing instructions");
</script>
4. <% echo ("You may optionally use ASP-style tags"); %>
<%= $variable; # This is a shortcut for "<%echo .." %>
Cách 1 chỉ có thể sử dụng nếu những tag ngắn được cho phép sử dụng. Có thể sửa short_open_tag trong cấu hình của php hoặc biên dịch file php với lựa chọn cho phép dùng các tag ngắn.
Tương tự như vậy, cách thứ 4 chỉ có tác dụng nếu asp_tag được đặt trong file cấu hình của PHP
PHP cho phép hỗ trợ các kiểu chú thích của cả C, C++ và Unix shell. VD:
<?php
echo "This is a test"; // This is a one-line c++ style comment
/* This is a multi line comment
yet another line of comment */
echo "Another Test"; # This is shell-style style comment
?>
Các kiểu dữ liệu:
2.1 Số nguyên: Được khai báo và sử dụng giá trị giống với C:
VD: $a = 1234; # decimal number
$a = -123; # a negative number
$a = 0123; # octal number (equivalent to 83 decimal)
$a = 0x12; # hexadecimal number (equivalent to 18 decimal)
2.2 Số thực:
VD :$a = 1.234; $a = 1.2e3;
Chú ý: Khi sử dụng các số thực để tính toán , có thể sẽ làm mất giá trị của nó. Vì vậy, nên sử dụng các hàm toán học trong thư viện chuẩn để tính toán.
2.3 Xâu :
Có 2 cách để xác định 1 xâu: Đặt giữa 2 dấu ngoặc kép (") hoặc giữa 2 dấu ngoặc đơn ('.
Chú ý: Các biến giá trị sẽ không được khai triển trong xâu giữa 2 dấu ngoặc đơn.
2.4 : Mảng:
Mảng thực chất là gồm 2 bảng : bảng chỉ số và bảng liên kết.
a. Mảng 1 chiều : Có thể dùng hàm : list() hoặc array() hoặc liệt kê các giá trịcủa từng phần tử trong mảng để tạo mảng . Có thể thêm các giá trị vào mảng để tạo thành 1 mảng. --> Dùng giống trong C
Có thể dùng các hàm asort(), arsort(), ksort(), rsort(), sort(), uasort(), usort(), and uksort() để sắp xếp mảng. Tuỳ thuộc vào việc bạn định sắp xếp theo kiểu gì.
b. Mảng nhiều chiều: Tương tự C. bạn có thể dùng như VD sau:
$a[1] = $f; # one dimensional examples
$a["foo"] = $f;
$a[1][0] = $f; # two dimensional
$a["foo"][2] = $f; # (you can mix numeric and associative indices)
$a[3]["bar"] = $f; # (you can mix numeric and associative indices)
PHP3 không thểtham chiếu trựtiếp từmột mảng nhiều chièu khi ởbên trong 1 xâu:
VD :
$a[3]['bar'] = 'Bob';
echo "This won't work: $a[3][bar]";
Kết quả trả ra sẽ là: This won't work: Array[bar].
Nhưng với VD sau sẽ chạy đúng:
$a[3]['bar'] = 'Bob';
echo "This will work: " . $a[3][bar];
Với PHP4, vấn đề sẽ được giải quyết bằng cách cho mảng vào giữa 2 dấu ngoặc móc { }
VD : $a[3]['bar'] = 'Bob';
echo "This will work: {$a[3][bar]}";
PHP không yêu cầu phải khai báo trước kiểu dữ liệu cho các biến, Kiểu dữ liệu của biến sẽ phụ thuộc vào kiểu dữ liệu mà bạn gán cho nó,
VD :
$foo = "0"; // $foo là kí tựASCII 48
$foo++; // $foo is xâu "1" (ASCII 49)
$foo += 1; // $foo là sốnguyên (2)
$foo = $foo + 1.3; // $foo là số thực (3.3)
$foo = 5 + "10 Little Piggies"; // $foo là số nguyên (15)
VD: $a = 1234; # decimal number
$a = -123; # a negative number
$a = 0123; # octal number (equivalent to 83 decimal)
$a = 0x12; # hexadecimal number (equivalent to 18 decimal)
2.2 Số thực:
VD :$a = 1.234; $a = 1.2e3;
Chú ý: Khi sử dụng các số thực để tính toán , có thể sẽ làm mất giá trị của nó. Vì vậy, nên sử dụng các hàm toán học trong thư viện chuẩn để tính toán.
2.3 Xâu :
Có 2 cách để xác định 1 xâu: Đặt giữa 2 dấu ngoặc kép (") hoặc giữa 2 dấu ngoặc đơn ('.
Chú ý: Các biến giá trị sẽ không được khai triển trong xâu giữa 2 dấu ngoặc đơn.
2.4 : Mảng:
Mảng thực chất là gồm 2 bảng : bảng chỉ số và bảng liên kết.
a. Mảng 1 chiều : Có thể dùng hàm : list() hoặc array() hoặc liệt kê các giá trịcủa từng phần tử trong mảng để tạo mảng . Có thể thêm các giá trị vào mảng để tạo thành 1 mảng. --> Dùng giống trong C
Có thể dùng các hàm asort(), arsort(), ksort(), rsort(), sort(), uasort(), usort(), and uksort() để sắp xếp mảng. Tuỳ thuộc vào việc bạn định sắp xếp theo kiểu gì.
b. Mảng nhiều chiều: Tương tự C. bạn có thể dùng như VD sau:
$a[1] = $f; # one dimensional examples
$a["foo"] = $f;
$a[1][0] = $f; # two dimensional
$a["foo"][2] = $f; # (you can mix numeric and associative indices)
$a[3]["bar"] = $f; # (you can mix numeric and associative indices)
PHP3 không thểtham chiếu trựtiếp từmột mảng nhiều chièu khi ởbên trong 1 xâu:
VD :
$a[3]['bar'] = 'Bob';
echo "This won't work: $a[3][bar]";
Kết quả trả ra sẽ là: This won't work: Array[bar].
Nhưng với VD sau sẽ chạy đúng:
$a[3]['bar'] = 'Bob';
echo "This will work: " . $a[3][bar];
Với PHP4, vấn đề sẽ được giải quyết bằng cách cho mảng vào giữa 2 dấu ngoặc móc { }
VD : $a[3]['bar'] = 'Bob';
echo "This will work: {$a[3][bar]}";
PHP không yêu cầu phải khai báo trước kiểu dữ liệu cho các biến, Kiểu dữ liệu của biến sẽ phụ thuộc vào kiểu dữ liệu mà bạn gán cho nó,
VD :
$foo = "0"; // $foo là kí tựASCII 48
$foo++; // $foo is xâu "1" (ASCII 49)
$foo += 1; // $foo là sốnguyên (2)
$foo = $foo + 1.3; // $foo là số thực (3.3)
$foo = 5 + "10 Little Piggies"; // $foo là số nguyên (15)
0 nhận xét: