Trang chủ > php cơ bản > Chương 4 – Các kiểu dữ liệu trong PHP

Chương 4 – Các kiểu dữ liệu trong PHP


PHP hỗ trợ 8 kiểu dữ liệu nguyên thủy

Bốn kiểu thông thường là : boolean , interger, foating-point number(float) , string

Hai kiểu phúc tạp là : mảng (arry) và đối tượng là (object) .Và cuối cùng là hai kiểu đặt biệt : Resource và NUll . Loại dữ liệu của biến thông thường không được gán bởi người lập trình mà được quyết định tại thời gian chạy của PHP , phụ thộc vào ngữ cảnh mà biến được dùng

1/Boolean

Đây là kiểu đơn giản nhất .Một kiểu boolean biểu thị 1 giá trị thật . Nó có thể là True hay False.Cú pháp để chỉ định 1 giá trị boolean , có thể sử dụn từ khóa True hay là False .Cả hai điều không phân biệt chữ hoa hay chữ thường

Ví dụ:

$vietm=True ;

//gán giá trị true cho biến $vietm

Để có thể chyển 1 giá trị sang kiểu boolean , chúng ta có thể dùng (bool) hay (boolean) Tuy nhiên trong hầu hết các trường hợp bạn không cần phải sử dụng việc ép kiểu này . Bởi giá trị sẽ được tự  động chuyển nếu có là 1 toán tử , hàm hay là cấu trúc điều khiển đòi hỏi 1 tham số kiểu boolean

Chú ý : -1 được xem là True , giống như  các giá trị khác 0 khác (bất kể là ố dương hay âm )

2/Integer

Là 1 tập hợp bao gồm các sô (….-1,0,1,2….)

Cú pháp integer có thể được chỉ định trong cơ số 10 , cơ số thập lục phân hay cơ số bát phân, tùy chọn đi trước bởi dấu – hay + nếu bạn sử dụng với cơ số bát phân , bạn phải theo thứ tự với 0 đứng trước , còn đối với số thập lục phân thì 0x

ví dụ

$viet=1234 // Số thập phân

$matrix=-123 // số âm

$anderson=0123 //số bát phân

$vietmatrix=0x1A // sô thập lục

Kích thước của kiểu dữ liệu này là 32bit , và PHP không hỗ trợ kiểu unsigned interger .Nếu bạn chỉ định 1 số vượt qua biên của kiểu dữ  liệu integer , nó sẽ được xem như kiểu float.Tương tự như vậy , khi bạn thực hiện một phép toán mà kết quả trả về là 1 số vượt qua biên của kiểu integer thì kiểu float sẽ được trả về

Tuy nhiên có một lõi trong PHP mà không phải bao giờ điều này cũng đúng , nó liên quan đến các số âm .Chẳng hạn khi bạn thực hiện -50000*$million , kết ủa sẽ là 429496728.Tuy nhiên khi cả hai toán tử điều là số dương thì không có vấn đề gì xảy ra

Để chuyển 1 giá trị sang kiểu integer ta có thể dùng toán tử  ép kiểu (int) hay integer .Tuy nhiên trong hầu hết các trường hợp bạn không cần phải dùng toán tử  ép kiểu đó , bởi giá trị sẽ được tự động chuyển sang nếu toán tử , hàm hay cấu trúc điều khiển đòi hỏi 1 đối số integer

3/Kiểu số thực (floats,doubles hay real numbers)

Có thể được chỉ định bằng cách sử dụng 1 trong các cú pháp sau :

code

$vietmatrix1.234;

$viet=1.23e3

$matrix=7E-10;

Kích cỡ của kiểu float tùy thuộc vào platform (nền) ,giá trị lớn nhất là xấp xỉ 1.8e308

4/ String

là những chuỗi các kí tự

trong PHP một kí tự cũng tương tự như 1 byte do đó có chính xác 256 kí tự khác nhau

cú pháp có thể khai báo bằng 3 cách khác nhau như sau

echo ‘ Viet Matrix ‘ ;

echo “Viet Matrix

Heredoc: cách khác để phân định chuỗi là sử dụng cú pháp (“<<<“)

[ Cái này mình cũng chưa dùng hì hì hì ]

5/ Mảng :

Mảng là danh sách các phần tử có cùng kiểu dữ liệu . Mảng có thể là mảng 1 chiều hay nhiều chiều

Mảng 1 chiều có chỉ mục : là mảng được quản lý bằng cách sử dụng chỉ số dưới kiểu integer để biểu thị vị trí của giá trị yêu cầu .

Cú pháp : $name[index1];

code

$vietmatrix[0]=”Viet”

$vietmatrix[1]=”Matrix”

$vietmatrix[2]=”dot.net”

Nếu bạn thự thi dòng lệnh sau echo $vietmatri[1] ; thì trên trình duyệt sẽ hiển thị dòng : Matrix

Bạn cũng có thể sử dụng hàm array() của PHP để tạo ra 1 mảng .

Ví dụ

$vietmatrix=array(“Viet”,”Matrix”,”dot.net”);

Mảng 1 chiều kết hợp rất thuận lợi khi dùng để ánh xạ một mảng sử dụng các từ  hơn là sử dụng các integer nó giúp ta giảm bớt thời gian và các mã yêu cầu để hiển thị 1 giá trị cụ thể

Ví dụ: Bạn muốn ghi lại tất cả các thức ăn và các cặp rượu ngon

$vietmatrix=[“Ga”]=”bia”;

$vietmatrix=[“Xoai”]=”Ruou”;

$vietmatrix=[“Nghieu”]=”Bia Ruou”;

Một cách khác là bạn có thể sử dụng hàm array()của PHP để tạo ra một mảng loại này , ví dụ như sau :

Code:

$vietmatrix=array(ga=>” ăn và uống rượu”, xoai=>”Uống rượu”,Nghieu=>”Ăn và có thể uống rượu bia “;

Mảng nhiều chiều có chỉ mục : chức năng của nó cũng giống như mảng 1 chiều có chỉ mục , ngoại trừ việc nó có thêm 1 mảng chỉ mục được dùng để chỉ định 1 phần tử .Cú pháp

$name[index1][index2]…[indexn];

Một mảng hai chiều có chỉ mục được tạo như  sau:

code

$vietmatrix=$learn_php[1][2];
Anderson_neo  –  alexbtp – Ghi rõ nguồn khi phát hành lại thông tin này

Chuyên mục:php cơ bản
  1. Đỗ Tứ
    Tháng Mười 15, 2009 lúc 3:40 chiều

    Chào anh ! Bạn em đang thắc mắc về việc một hàm trong PHP có thể trả về 2 kiểu data chẳng liên quan gì nhau . Ví dụ một câu lệnh kiểu này vẫn biên dịch thành công mà không hề vướng lỗi ngữ pháp ( em dùng mã giả , anh thông cảm ) :
    function MyFunc
    1. if ( n == 1) return 6
    2. return “I am Obelisk”
    end MyFunc
    Mong anh giải thích hộ em ạ , anh có thể contact qua mail em cũng được ^^

  1. No trackbacks yet.

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

%d bloggers like this: