=> 'nguyễn Văn A', 1 => 'nguyễn Văn B'

Ép dữ liệu sang kiểu số thức.

Dùng (float), (double) để chuyển kiểu dữ liệu sang số thực cho một biến

<?php

$a = 123; // biến $a kiểu int

$a = (float)$a; // Biến $a lúc này kiểu số thực (float)

$a = (double)$a; // Biến $a lúc này kiểu ố thực (double)

?>

Kiểm tra một biến kiểu số thực.

Để kiểm tra một biến phải kiểu số thực không chúng ta dùng hàm is_float($bien) để kiểm tra cho kiểu float, is_double($bien) để kiểm tra cho kiểu double. Kết quả hai hàm này trả về TRUE nếu đúng, FALSE nếu sai.

2.2.6. Kiểu chuỗi String

Có thể bạn quan tâm!

Xem toàn bộ 270 trang tài liệu này.

Các kiểu dữ liệu trong php thì kiểu chuỗi mình gồm kiểu string (chuỗi) và char (ký tự), mỗi ký tự là 1 byte và là một trong 256 ký tự khác nhau, để khai báo báo ta chỉ việc khai báo một biến và gán giá trị chuỗi cho nó, chuỗi phải được bao quanh bằng dấu nháy đơn „hoặc dấu nháy kép “. Ép kiểu cũng như trên ta dùng (string) để chuyển sang kiểu chuỗi.

<?php

Lập trình mã nguồn mở - 5

$a = 123; // khai báo biến $a kiểu int có giá trị 123

$a = (string)$a; //Chuyển biến $a thành kiểu chuỗi và có giá trị là '123'

?>

2.2.7. Kiểu boolean

Đây là một kiểu dữ liệu đơn giản nhất trong các kiểu dữ liệu trong PHP, nó chỉ chứa 2 giá trị là đúng hoặc sai (TRUE hoặc FALSE). Để tạo biến kiểu boolean thì ta gán giá trị cho nó là TRUE hoặc FALSE. Lưu ý TRUE, FALSE không phân biệt hoa thường.

<?php

$is_admin = false; // biến $admin là kiểu boolean có gái trị là false

?>

Ép dữ liệu sang kiểu boolean.

Tương tự như kiểu INT ta sử dụng (bool) hoặc (boolean) để ép kiểu sang kiểu bool. Như vậy trong PHP thì bool và boolean là 2 từ khóa có cùng một ý nghĩa.

<?php

$bool = 1; // biến $bool là kiểu int

$bool = (bool)$bool; // lúc này biến $bool sẽ có kiểu boolean

// Hoặc

$bool = (boolean)$bool; // lúc này biến $bool sẽ có kiểu boolean

?>

Các ký tự 0, ký tự trống và null đều được quy về giá trị FALSE, các ký tự còn lại quy về TRUE. Việc chuyển đổi này đôi khi cũng không cần thiết vì php tự xem xét giá trị và quy về TRUE hay FALSE.

<?php

$a = 123; // TRUE

$b = 0; // FALSE

$c = '0'; // FALSE

$d = 'a123b' // TRUE

$e = null; // FALSE

$f = ''; // FALSE

?>

Kiểm tra một biến kiểu boolean

Để kiểm tra một biến có phải kiểu boolean ta dùng hàm is_bool($bien); để kiểm tra, kết quả của hàm này trả về TRUE nếu là kiểu bool, ngược lại là false nếu không phải kiểu bool.

2.2.8. Kiểu mảng

Mảng là danh sách các phần tử có cùng kiểu dữ liệu. Có 2 loại mảng là mảng một chiều hoặc mảng nhiều chiều.

Với PHP thì các phần tử của mảng có thể không cùng kiểu dữ liệu, và các phần tử của mảng được truy xuất thông qua các chỉ mục (vị trí) của nó nằm trong mảng.

Khởi tạo và truy xuất các phần tử trong mảng

Để khai báo mảng ta dùng cú pháp sau:

<?php

$ten_mang = array(); // khởi tạo một mảng gán vào biến $ten_mang

?>

Giả sử có 2 sinh viên là Nguyễn Văn A và Nguyễn Văn B, sẽ khởi tạo một mảng $sinhvien để lưu 2 sinh viên này.

Cách 1:

<?php


?>

Cách 2:

<?php

$sinhvien = array('Nguyễn Văn A', 'Nguyễn Văn B'); print_r($sinhvien);


$sinhvien = array(

0 => 'Nguyễn Văn A', 1 => 'Nguyễn Văn B'


?>

Cách 3:

<?php


?>

Cách 4:

<?php


?>

);

print_r($sinhvien);


$sinhvien = array();

$sinhvien[0] = 'Nguyễn Văn A';

$sinhvien[1] = 'Nguyễn Văn B'; print_r($sinhvien);


$sinhvien = array();

$sinhvien[] = 'Nguyễn văn A';

$sinhvien[] = 'Nguyễn Văn B'; print_r($sinhvien);

Cả 4 cách đều có kết quả giống nhau nhưng cú pháp lại khác nhau.

Mảng có chỉ mục

Là mảng có các phần tử được định danh một chỉ mục (kiểu số) và bắt đầu bằng số 0 và phần tử cuối cùng có chỉ mục là (n-1), trong đó n là tổng số phần tử của mảng. Điều này có nghĩa nếu mảng có 10 phần từ thì lần lượt các vị trí phần tử trong mảng là:[0] – [1] – [2] – [3] – [4] – [5] – [6] – [7] – [8] – [9].

Quay lại 4 cách giải của ví dụ trên:

Với cách 1: Khởi tạo một mảng và gán trực tiếp 2 phần từ vào, vì mảng bắt đầu từ 0 nên nó tự hiểu phần tử đầu tiên có chỉ mục =0, và phần tử thứ 2 = 1.

Với cách 2: Khởi taọ một mảng và gán trực tiếp 2 phần tử vào, nhưng lúc gán có ghi rò các chỉ mục cho từng phần tử.

Với cách 3: Khởi tạo một mảng rỗng. sau đó dùng 2 lệnh để gán 2 phần tử vào, mỗi lệnh gán có chỉ rò chỉ mục.

Với cách 4: Khởi tạo một mảng rỗng, sau đó dùng 2 lệnh gán 2 phần tử vào nhưng không chỉ rò chỉ mục, lúc này PHP sẽ kiểm tra thấy mảng đang rỗng nên phần tử đầu tiên nó sẽ mặc định gán chỉ mục = 0, và phần tử tiếp theo sẽ bằng phần tử trước nó + 1 tức là sẽ = 1.

Để truy xuất các phần tử của mảng chỉ mục ta dùng cú pháp sau:

$tenmang[$index]; trong đó $index là chỉ mục ta muốn lấy.

Ví dụ:

<?php


?>

Mảng kết hợp


$sinhvien = array(

0 => 'Nguyễn Văn A', 1 => 'Nguyễn Văn B'

);

echo $sinhvien[0]; // Xuất ra màn hình phần tử 0 => Nguyễn Văn A echo $sinhvien[1]; // Xuất ra màn hình phần tử 1 => Nguyễn Văn B

Là Mảng có các phần tử được định danh bằng một cái tên và đương nhiên vị trí các phần tử sẽ không có thứ tự.

Ví dụ:

<?php


?>


$sinhvien = array(

'sinhvien_a' => 'Nguyễn Văn A', 'sinhvien_b' => 'Nguyễn Văn B'

);

print_r($sinhvien);

Tương tự như những ví dụ ở phần mảng có chỉ mục, có thêm cách khai báo.

<?php

$sinhvien = array();

$sinhvien['sinhvien_a'] = 'Nguyễn Văn A';

$sinhvien['sinhvien_b'] = 'Nguyễn Văn B'; print_r($sinhvien);

?>

Xét ví dụ sau:

<?php

$sinhvien = array();

$sinhvien['sinhvien_a'] = 'Nguyễn Văn A';

$sinhvien['sinhvien_b'] = 'Nguyễn Văn B'; print_r($sinhvien);

?>

Trong ví dụ này điều đặc biệt là lúc gán sinh viên Nguyễn Văn B ta không truyền tên cho nó mà chỉ dùng dấu [] để thêm vào. Điều gì sẽ xảy ra? Câu trả lời như sau: Trình biên dịch sẽ chạy dòng thứ 1 khởi tạo một mảng rỗng, dòng thứ 2 thêm một phần tử cho mảng với tên sinhvien_a, dòng thứ 3 nó sẽ thấy không có truyền chỉ mục

nên nó sẽ lưu giá trị Nguyễn Văn B dưới dạng chỉ mục. Nó xét thấy trong mảng này chưa có chỉ mục nào (vì dòng 2 truyền dạng kết hợp), nên sinh viên Nguyễn Văn B sẽ được lấy chỉ mục = 0.

Việc truy xuất các phần tử trong mảng kết hợp tương tự như mảng chỉ mục ta dùng cú pháp sau: $tenmang[$name], trong đó $name là tên của phần tử muốn lấy ra.

<?php

$sinhvien = array();

$sinhvien['sinhvien_a'] = 'Nguyễn Văn A';

$sinhvien['sinhvien_b'] = 'Nguyễn Văn B';

echo $sinhvien['sinhvien_a]; // xuất ra màn hình sinh viên Nguyễn Văn A echo $sinhvien['sinhvien_b]; // xuất ra màn hình sinh viên Nguyễn Văn B

?>

2.2.10. Kiểu đối tượng

PHP5 là một ngôn ngữ lập trình hướng đối tượng (OO - Object Oriented). Nói một cách đơn giản nhất thì lập trình hướng đối tượng (OOP - Object Oriented Programming) là việc tạo ra một kiểu dữ liệu mới (đối tượng - object hay lớp - class). Thay vì việc phải tạo một dãy các hàm liên quan đến đối tượng đó, sử dụng thuộc tính (properties) và phương thức (method) trực tiếp của đối tượng đó.

2.2.11. Giá trị Null

Một biến được coi là NULL (không có giá trị) nếu nó thỏa mãn cả 3 điều kiện sau:

1. Nó được gán là NULL (không phân biệt hoa thường)

2. Nó chưa bao giờ "được" (hay "bị") gán giá trị.

3. Nó đã bị thực hiện bằng lệnh unset - hàm hủy bỏ các biến chỉ định.

Để kiểm tra một biến có là NULL hay không, ta có thể sử dụng hàm is_null (biến).

Ví dụ:

<?php


?>


$test = NULL; echo is_null($test);

2.3. Khái niệm biến, hằng và chuỗi

2.3.1. Biến trong PHP

Biến được xem là vùng nhớ dữ liệu tạm thời. Và giá trị có thể thay đổi được.

Biến được bắt đầu bằng ký hiệu "$".

Một biến được xem là hợp lệ khi nó thỏa mãn các yếu tố :

+ Tên của biến phải bắt đầu bằng chữ cái hay dấu gạch dưới và theo sau là các ký tự, số hay dấu gạch dưới, không chứa dấu cách.

+ Tên của biến không được phép trùng với các từ khóa của PHP.

Trong PHP để sử dụng một biến ta thường phải khai báo trước, tuy nhiên đối với các lập trình viên khi sử dụng họ thường xử lý cùng một lúc các công việc, nghĩa là vừa khai báo vừa gán dữ liệu cho biến.

Bản thân biến cũng có thể gán cho các kiểu dữ liệu khác. Và tùy theo ý định của người lập trình.

Cú pháp khai báo biến:

$tên_biến [=giá_trị_khởi_tạo];

Ví dụ:


<?php


?>


$a = 100; //Biến a ở đây có giá trị là 100

$a = "PHP is easy"; // Biến a ở đây có giá trị là "PHP is easy" Biena = 123; //Có lỗi vì bặt đầu biến không có dấu "$"

$123a = "PHP"; //Có lỗi vì phần tên bắt đầu củaa biến là dạng số

Biến trong biến

Khi khai báo biến và khởi tạo giá trị cho biến với kiểu dữ liệu, sau đó muốn sử dụng giá trị của biến đó thành tên biến và có giá trị chính là giá trị của biến trước đó thì sử dụng cặp dấu $$.

Ví dụ:Biến $var có giá trị là "total", sau đó muốn sử dụng biến là total thì khai báo như sau:

<html>

<head>

<title>::Welcome to PHP</title>

</head>

<body>

<h4>Change DataType of Variable</h4>

<?php


?>

</body>

</html>

$var="total"; echo $var; echo "<br>";

$$var=10; echo $total;

Tầm vực của biến

Tầm vực của biến phụ thuộc vào nơi khai báo biến, nếu biến khai báo bên ngoài hàm thì sẽ có tầm vực trong trang PHP, trong trường hợp biến khai báo trong hàm thì chỉ có hiệu lực trong hàm đó.

Ví dụ, Ta có biến $a khai báo bên ngoài hàm nhưng khi vào trong hàm thì biến

$a được khai báo lại, biến này có tầm vực bên trong hàm. Tương tự như vậy, khi biến

$i khai báo trong hàm thì chỉ có tầm vực bên trong hàm cho dù chúng được khai báo lại bên ngoài như ví dụ sau:

Ví dụ:

<html>

<head>

<title>::Welcome to PHP</title>

</head>

<body>

<h4>Scope of Variable</h4>

<?php


?>

</body>

</html>

$a = 100;

/* global scope */ function Test()

{

$i=10;

$a=10;

echo "<br>a:=$a"; echo "<br>i:=$i";

/* reference to local scope variable */

}

Test();

echo "<br>a:=$a";

$i=1000;

echo "<br>i:=$i";

Ngoài ra, để sử dụng biến toàn cục trong hàm, sử dụng từ khóa global, khi đó biến toàn cục sẽ có hiệu lực bên trong hàm.

Ví dụ khai báo biến $a bên ngoài hàm, sau đó bên trong hàm Test sử dụng từ khoá global cho biến $a, khi đó biến $a sẽ được sử dụng và giá trị đó có hiệu lực sau khi ra khỏi hàm.

Ví dụ:


<html>

<head> <title>Welcome to PHP</title> </head>

<body>

<h4>Scope of Variable</h4>

<?php

$a = 100;

/* global scope */ function Test() {

global $a;

$i=10;

$a+=10;

echo "<br/>a:=$a"; echo "<br/>i:=$i";

/* reference to local scope variable */


?>

</body>

</html>

2.3.2. Hằng

}

Test();

echo "<br/>a:=$a";

$i=1000;

echo "<br/>i:=$i";

Nếu biến là cái có thể thay đổi được thì ngược lại hằng là cái ta không thể thay đổi được . Hằng trong PHP được định nghĩa bởi hàm define theo cú pháp:

define (string tên_hằng, giá_trị_hằng );

Cũng giống với biến hằng được xem là hợp lệ thì chúng phải đáp ứng một số yếu tố :

+ Cách đặt tên hằng giống tên biến.

+ Hằng có thể truy cập bất cứ vị trí nào trong mã lệnh

+ Hằng chỉ được phép gán giá trị duy nhất một lần.

Ví dụ:


<HTML>

<HEAD>

<TITLE>::Welcome to PHP</TITLE>

</HEAD>

<BODY>

..... Xem trang tiếp theo?
⇦ Trang trước - Trang tiếp theo ⇨

Ngày đăng: 15/07/2022