답변:
이 var_dump
함수는 유형 및 값을 포함하여 변수 / 표현에 대한 구조화 된 정보를 표시 합니다 . 배열은 구조를 보여주기 위해 들여 쓰기 된 값으로 재귀 적으로 탐색됩니다. 또한 어떤 배열 값과 객체 속성이 참조인지 보여줍니다.
이 print_r()
변수는 사람이 읽을 수있는 방식으로 변수에 대한 정보를 표시합니다. 배열 값은 키 와 요소 를 표시하는 형식으로 표시 됩니다 . 객체에도 비슷한 표기법이 사용됩니다.
예:
$obj = (object) array('qualitypoint', 'technologies', 'India');
var_dump($obj)
화면에 아래 출력이 표시됩니다.
object(stdClass)#1 (3) {
[0]=> string(12) "qualitypoint"
[1]=> string(12) "technologies"
[2]=> string(5) "India"
}
그리고 print_r($obj)
화면에 아래 출력이 표시됩니다.
stdClass Object (
[0] => qualitypoint
[1] => technologies
[2] => India
)
더 많은 정보
일반적으로 print_r( )
출력은 더 읽기 쉽고 간결하며 읽기 쉽습니다. 일명 인간이 읽을 수 있지만 데이터 유형을 표시 할 수는 없습니다.
으로 print_r()
당신도 변수로 출력을 저장할 수 있습니다 :
$output = print_r($array, true);
할 var_dump()
수 없습니다. 그러나 var_dump()
데이터 유형을 표시 할 수 있습니다.
사이에 유의 한 차이 var_dump
및print_r
두 함수 는 모두 변수에 대한 정보를 덤프 하지만 var_dump
덤프 될 여러 매개 변수 print_r
는 두 매개 변수 중 두 매개 변수를 가져올 수 있습니다. 여기서 첫 번째 매개 변수는 덤프 할 변수이고 두 번째 매개 변수는 부울 값입니다.
var_dump
두 번째 매개 변수 print_r
를 true로 설정하면 print_r이 변수 정보를 반환 할 수있는 값만 덤프 / 인쇄 할 수있는 값을 반환 할 수 없습니다 . 의 반환 값 print_r
에있을 것입니다 문자열 형식입니다.
로 인쇄되는 정보 는 원시 값 print_r
을 var_dump
인쇄 할 때 훨씬 읽기 쉬운 형식으로되어 있습니다.
print_r
함수는 var_dump
값을 반환 할 수 없기 때문에 주로 디버깅 목적으로 사용될 수있는 많은 컨텍스트에서 사용될 수 있습니다.
ob_start(); var_dump($var); $dump=ob_get_clean();
var_dump($var)
추가 세부 사항을 제공하여 세부 사항을 표시합니다.
var_dump () :-
예 :-
<?php
$a = array(1, 2, array("a", "b", "c"));
var_dump($a);
?>
출력 :-
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
array(3) {
[0]=>
string(1) "a"
[1]=>
string(1) "b"
[2]=>
string(1) "c"
}
}
print_r () :-
예 :-
<pre>
<?php
$a = array ('a' => 'apple', 'b' => 'banana', 'c' => array ('x', 'y', 'z'));
print_r ($a);
?>
</pre>
산출:-
<pre>
Array
(
[a] => apple
[b] => banana
[c] => Array
(
[0] => x
[1] => y
[2] => z
)
)
</pre>
ob_start(); var_dump($var); $dump=ob_get_clean();
print_r () 및 var_dump ()는 PHP에서 디버깅 목적으로 사용되는 배열 디버깅 함수입니다. print_r () 함수는 배열 키와 그 멤버를 Array ([key] = value)로 반환하는 반면 var_dump () 함수는 데이터 유형과 길이를 가진 배열 키를 가진 배열리스트를 반환합니다. 예 : Array (array_length) {[0] = string (1) 'a'}.