Nội dung bài viết
Trong bài này chúng ta sẽ bàn về các kiểu dữ liệu trong PHP.
Kiểu dữ liệu trong PHP
Giá trị được gán cho biến trong PHP có thể có nhiều kiểu dữ liệu khác nhau. Chúng có thể là một kiểu dữ liệu đơn giản như chuỗi văn bản và số, hoặc là các kiểu dữ liệu phức tạp hơn như mãng, đối tượng.
PHP hỗ trợ 8 kiểu dữ liệu sơ khai: số nguyên(integer), số thực (float), số thực dấu phẩy động, chuỗi văn bản, mảng, đối tượng, resoures và null (không có gì). Những kiểu dữ liệu này được sử dụng để gán cho biến. Chúng ta sẽ thảo luận chi tiết hơn nhé! bài này chỉ mang tính chất giới thiệu các kiểu dữ liệu. Từng kiểu dữ liệu sẽ có bài riêng, hiểu sâu hơn.
Số nguyên PHP (integer)
Số nguyên bao gồm tất cả các số, không có dấu chấm thập phân, (…,-2, -1, 0, 1, 2). Số nguyên có thể được đặc tả trong hệ thập phân (10), hệ thập lục phân (16 – bắt đầu bằng 0x) hay hệ bát phân (với số 0 đầu), ký hiệu âm dương bằng ký tự (- hay +).
<?php
$a = 123; // số thập phân
var_dump($a);
echo "<br>";
$b = -123; // số âm
var_dump($b);
echo "<br>";
$c = 0x1A; // thập lục phân
var_dump($c);
echo "<br>";
$d = 0123; // bát phân
var_dump($d);
?>
Note: từ PHP 5.4+ bạn cũng có thể biểu diễn số nguyên dưới dạnh nhị phân (hệ số 2). Để sử dụng nhị phân bạn đặt ký hiệu 0b đứng đầu (ví dụ: $var = 0b11111111;).
Chuỗi văn bản trong PHP
Chuỗi văn bản là tập hợp các ký tự, mà mỗi ký tự tương đương 1 byte.
Chuỗi có thể bao gồm ký tự chữ, số, các ký tự đặc biệt và nó có thể lớn lên đến 2GB (tối đa: 2,147,483,647 byte ). Cách đơn giản nhất để đặc tả một chuỗi văn bản là đặt nó vào cặp nháy đơn (ví dụ: ‘Hello! Welcome to PHP!’). Tuy nhiên, bạn cũng có thể đặt nó vào cặp nháy kép (“‘Hello! Welcome to PHP!”)
<?php
$a = 'Hello world!';
echo $a;
echo "<br>";
$b = "Hello world!";
echo $b;
echo "<br>";
$c = 'Stay here, I\'ll be back.';
echo $c;
?>
Chúng ta sẽ trao đổi kỹ hơn về string trong các bài kế tiếp
Kiểu số thực hoặc là Doubles
Kiểu số thực dấu phẩy động ( cũng được biết như là kiểu số thực, doubles, floats) là số thập phân, ví dụ bên dưới sẽ làm rõ hơn:
<?php
$a = 1.234;
var_dump($a);
echo "<br>";
$b = 10.2e3;
var_dump($b);
echo "<br>";
$c = 4E-10;
var_dump($c);
?>
Kiểu logic (Boolean) trong PHP
Kiểu biến logic (boolean) biểu diễn 2 giá trị xách định đối lập nhau như là 1 (true) hoặc 0 (false), tương tự như chiếc công tắc đèn ngoài đời thực chỉ có 2 giá trị tắt/mở.
<?php
// Gán giá trị TRUE vào 1 biến
$show_error = true;
var_dump($show_error);
?>
Mảng trong PHP
Mảng là biến có thể lưu trữ nhiều giá trị hơn tại một thời điểm. Nó hữu ích để tập hợp những phần tử có liên quan với nhau, ví dụ tập hợp nên nước hoặc tên thành phố.
Mảng có thể được xách định như là tập hợp các chỉ mục của giá trị dữ liệu. Mỗi chỉ mục ( có thể gọi là từ khoá) của mảng là duy nhất tham chiếu đến một giá trị tương ứng.
<?php
$colors = array("Red", "Green", "Blue");
var_dump($colors);
echo "<br>";
$color_codes = array(
"Red" => "#ff0000",
"Green" => "#00ff00",
"Blue" => "#0000ff"
);
var_dump($color_codes);
?>
Kiểu đối tượng trong PHP
Đối tượng là một dạng dữ liệu không những cho phép lưu trữ dữ liệu, mà còn có cả các phương thức xử lý dữ liệu. Đối tượng là thể hiện cụ thể của lớp, nó đóng vai trò là khuôn mẫu cho các đối tượng khác. Một đối tượng có thể được tạo ra từ khuôn mẫu này với từ khoá new.
Mỗi đối tượng có những thuộc tính và các phương thức đúng với nguyên bản của lớp cha. Mỗi đối tượng là hoàn toàn độc lập với các đối tượng khác. Nó có các thuộc tính và phương thức của riêng nó (cùng với các phương thức và thuộc tính của lớp cha) và có thể thao tác độc lập (lên dữ liệu của nó) với các đối tượng cùng lớp cha.
Bên dưới là một ví dụ đơn giản, cách định nghĩa một lớp (class) để tạo ra đối tượng.
<?php
// Class definition
class greeting{
// properties
public $str = "Hello World!";
// methods
function show_greeting(){
return $this->str;
}
}
// Create object from class
$message = new greeting;
var_dump($message);
?>
Tip: Các phần tử dữ liệu được lưu trữ trong đối tượng được gọi là thuộc tính, hay những đoạn mã mô tả các sử lý dữ liệu được gọi là phương thức của đối tượng.
PHP NULL
NULL là một giá trị đặc biệt được sử dụng để thể hiện một biến rỗng trong PHP. Biến có kiểu NULL là biến không có bất kỳ dữ liệu nào. NULL là giá trị duy nhất có thể có của kiểu null.
<?php
$a = NULL;
var_dump($a);
echo "<br>";
$b = "Hello! Welcome to PHP!";
$b = NULL;
var_dump($b);
?>
Khi biến được tạo ra không có giá trị trong PHP như là $var; Nó tự động được gán giá trị là null. Người mới học PHP rất hay nhầm lẫn giữa $var1=NULL; và $var2=”; giống nhau, nhưng nó hoàn toàn không phải như thế. Cả 2 biến rất khác nhau, $var1 có giá trị null, trong khi $var2 chỉ ra là không có giá trị nào gán cho nó.
Loại nguồn dữ liệu trong PHP
Nguồn dữ liệu là một biến đặc biệt, lưu một tham chiếu đến nguồn dữ liệu bên ngoài. Nó thường xử lý mở file hoặc kết nối dữ liệu.
<?php
// Open a file for reading
$handle = fopen("note.txt", "r");
var_dump($handle);
echo "<br>";
// Connect to MySQL database server with default setting
$link = mysqli_connect("localhost", "root", "");
var_dump($link);
?>
Bài sau chúng ta sẽ đề cập kỹ hơn về kiểu chuỗi văn bản trong PHP.