Pages

Wednesday, March 28, 2018

[PHP basic] String là array

PHP là một ngôn ngữ lỏng lẻo (=== bốc phét là linh hoạt), vì thế có nhiều ngoại lệ khi xử lý. Bài này nói về việc string được xử lý như array.

Giả sử ta có biến sau:

$mystr = "Hello world!";

Số character của biến trên là 12. Để đếm tổng số character của string, ta dùng hàm strlen();

1) Giờ thử echo xem string này là array ra sao. Ví dụ:

echo $mystr[0] hoặc $mystr[0], ta đều có H.

2) Giờ sửa string này bằng cách thêm vào một giá trị thay thế, giả sử:

$mystr{0} hoặc $mystr[0] = "K";

3) Giờ echo $mystr; ta sẽ thấy "Hello world!" biến thành "Kello world!";

Giờ ta thử in ra từng character dùng for. Nếu là array ta dùng count() để đếm số elements trong array. Vì đây là string nên ta đếm bằng strlen() như đã nói ở trên.

 $tongsokytu = strlen($mystr);

echo $tongsokytu."<br>";

for ($i=0; $i < $tongsokytu; $i++) {
    echo $mystr[$i]."-";
  }


Kết quả: H-e-l-l-o- -w-o-r-l-d-!-

Nếu tiếng Việt string là "dậy nhậu học" thì kết quả là: "d-�-�-�-y- -n-h-�-�-�-u- -h-�-�-�-c-", hầm bà lằm luôn. Có gì đó sai sai :-)