Hàm print_r() PHP sử dụng như thế nào ?

Hàm print_r() PHP là một hàm tích hợp sẵn trong PHP, được sử dụng để hiển thị thông tin về một biến dưới dạng dễ đọc cho con người. Nó giúp chúng ta dễ dàng xem thông tin về một biến, bao gồm cả mảng và đối tượng.

Lập Trình Viên mời bạn cùng tham khảo chi tiết nội dung bên dưới. Bài viết này nằm trong chuyên đề hướng dẫn PHP từ cơ bản đến nâng cao tại dự án Phát Triển Website.

Ngoài hàm print_r() thì còn có hai hàm tương tự như var_export() và var_dump(). Cả ba hàm này đều giúp hiển thị thông tin về biến, tuy nhiên print_r() chỉ hiển thị thông tin cơ bản, trong khi var_export() và var_dump() có thể hiển thị thông tin về các thuộc tính riêng tư và bảo vệ của đối tượng.

Hàm print_r() PHP là gì?

Hàm print_r() PHP là một hàm tích hợp sẵn trong PHP, được sử dụng để hiển thị thông tin về một biến dưới dạng dễ đọc cho con người. Khi sử dụng hàm này, chúng ta có thể dễ dàng xem thông tin về một biến, bao gồm cả mảng và đối tượng.

Hướng dẫn sử dụng hàm print_r() PHP

Để sử dụng hàm print_r() PHP, chúng ta chỉ cần truyền biến cần hiển thị thông tin vào hàm như sau:

print_r($variable);

Với $variable là tên của biến cần hiển thị thông tin.

Hàm print_r() PHP có thể nhận hai tham số, đó là $variable là biến cần hiển thị thông tin và $return_output để xác định nếu muốn lưu thông tin vào một biến khác thay vì hiển thị ngay trên trình duyệt. Tham số $return_output có giá trị mặc định là FALSE.

Cách triển khai hàm print_r() PHP

Hàm print_r() trong PHP được sử dụng để in ra định dạng của một biến, bao gồm loại và giá trị của nó. Hàm này trả về một chuỗi, nhưng thường được sử dụng để in ra màn hình.

Cú pháp

print_r(mixed $variable)

Mô tả các tham số

  • $variable: Biến cần in ra.

Ví dụ

$name = "John Doe";
$age = 30;

// In ra biến $name
print_r($name);

// In ra biến $age
print_r($age);

Kết quả:

string(7) "John Doe"
int(30)

In ra mảng

Chúng ta cũng có thể sử dụng hàm print_r() để in ra mảng.

$array = ["name" => "John Doe", "age" => 30];

// In ra mảng $array
print_r($array);

Kết quả:

Array
(
    [name] => John Doe
    [age] => 30
)

In ra đối tượng

Chúng ta cũng có thể sử dụng hàm print_r() để in ra đối tượng.

class Person {
  public $name;
  public $age;

  public function __construct($name, $age) {
    $this->name = $name;
    $this->age = $age;
  }
}

$person = new Person("John Doe", 30);

// In ra đối tượng $person
print_r($person);

Kết quả:

object(Person)#1 (2) {
  ["name"] => string(7) "John Doe"
  ["age"] => int(30)
}

In ra định dạng khác

Chúng ta có thể sử dụng tham số true để in ra định dạng của một biến theo định dạng HTML.

$name = "John Doe";
$age = 30;

// In ra biến $name theo định dạng HTML
print_r($name, true);

// In ra biến $age theo định dạng HTML
print_r($age, true);

Kết quả:

<pre>
string(7) "John Doe"
</pre>
<pre>
int(30)
</pre>

Hàm print_r() là một hàm hữu ích để in ra định dạng của một biến. Bằng cách hiểu cú pháp của hàm này, bạn có thể sử dụng nó để debug hoặc để tạo các bản ghi lỗi.

Ưu và Nhược điểm của hàm print_r() PHP

Ưu điểm

  • Hàm print_r() PHP rất dễ sử dụng và tiện lợi cho việc hiển thị thông tin của một biến.
  • Nó cho phép hiển thị thông tin về cả mảng và đối tượng, giúp cho việc kiểm tra giá trị của chúng trở nên thuận tiện hơn.

Nhược điểm

  • Hàm print_r() PHP không hiển thị được thông tin chi tiết về các thuộc tính riêng tư hoặc bảo vệ của đối tượng.
  • Khi sử dụng với các biến có giá trị rất lớn, hàm này sẽ không hiển thị được đầy đủ thông tin, dẫn đến việc khó khăn trong kiểm tra giá trị của biến.

Lời khuyên khi sử dụng hàm print_r() PHP

Khi sử dụng hàm print_r() PHP, chúng ta nên lưu ý các điểm sau:

  • Chúng ta nên sử dụng hàm này kết hợp với các hàm khác như var_export() và var_dump() để hiển thị đầy đủ thông tin về một biến.
  • Trong trường hợp cần kiểm tra giá trị của một biến có kích thước quá lớn, chúng ta nên sử dụng các công cụ debug khác như Xdebug hoặc Zend Debugger để dễ dàng theo dõi giá trị của biến.

Kết luận

Trong bài viết này, chúng ta đã tìm hiểu về hàm print_r() PHP, một hàm tích hợp sẵn trong PHP, được sử dụng để hiển thị thông tin về một biến dưới dạng dễ đọc cho con người. Chúng ta cũng đã tìm hiểu ưu và nhược điểm của hàm này, cùng với lời khuyên khi sử dụng. Hy vọng bài viết này sẽ giúp bạn hiểu rõ hơn về hàm print_r() PHP và sử dụng nó một cách hiệu quả trong các dự án của mình. 

Hàm print_r() PHP có thể hiển thị được thông tin về đối tượng không?

Có, hàm print_r() PHP có thể hiển thị thông tin cơ bản về đối tượng, nhưng nó không thể hiển thị chi tiết về các thuộc tính riêng tư hoặc bảo vệ của đối tượng.

Tôi muốn lưu thông tin của hàm print_r() PHP vào một biến khác, làm thế nào để thực hiện điều này?

Bạn có thể sử dụng tham số thứ hai $return_output của hàm print_r() PHP. Nếu bạn thiết lập giá trị của $return_output là TRUE, hàm này sẽ trả về một chuỗi chứa thông tin về biến, thay vì hiển thị trực tiếp lên trình duyệt.

Hàm print_r() PHP có thể hiển thị được thông tin về mảng đa chiều không?

Có, hàm print_r() PHP có thể hiển thị thông tin về mảng đa chiều, và nó sẽ hiển thị theo từng chiều của mảng.

Tại sao hàm print_r() PHP không hiển thị được đầy đủ thông tin về biến khi kích thước quá lớn?

Khi sử dụng với các biến có kích thước quá lớn, hàm print_r() PHP sẽ không hiển thị đầy đủ thông tin, do đó chúng ta nên sử dụng các công cụ debug khác như Xdebug hoặc Zend Debugger để theo dõi giá trị của biến.

Tôi muốn hiển thị thông tin chi tiết về một đối tượng, tôi nên sử dụng hàm nào?

Nếu bạn muốn hiển thị thông tin chi tiết về một đối tượng, bạn có thể sử dụng hàm var_dump() hoặc var_export(). Hai hàm này sẽ hiển thị thông tin chi tiết về các thuộc tính của đối tượng, bao gồm cả thuộc tính riêng tư và bảo vệ.