Odpowiedzi:
Te var_dump
wyświetlacze funkcyjne strukturze informacji o zmiennych / wyrażenia w tym jego rodzaju i wartości . Tablice są badane rekurencyjnie z wartościami wciętymi, aby pokazać strukturę. Pokazuje także, które wartości tablic i właściwości obiektów są referencjami.
print_r()
Wyświetla informacje o zmiennej w sposób, który jest odczytywany przez ludzi. wartości tablic będą prezentowane w formacie pokazującym klucze i elementy . Podobna notacja jest używana dla obiektów.
Przykład:
$obj = (object) array('qualitypoint', 'technologies', 'India');
var_dump($obj)
wyświetli się poniżej wyjścia na ekranie.
object(stdClass)#1 (3) {
[0]=> string(12) "qualitypoint"
[1]=> string(12) "technologies"
[2]=> string(5) "India"
}
I print_r($obj)
wyświetli poniżej wynik na ekranie.
stdClass Object (
[0] => qualitypoint
[1] => technologies
[2] => India
)
Więcej informacji
Ogólnie, print_r( )
dane wyjściowe są ładniejsze, bardziej zwięzłe i łatwiejsze do odczytania, czyli bardziej czytelne dla człowieka, ale nie mogą pokazywać typów danych.
Z print_r()
możesz również zapisać dane wyjściowe w zmiennej:
$output = print_r($array, true);
co var_dump()
nie może zrobić. Jednak var_dump()
może wyświetlać typy danych.
var_dump()
pokaże ci rodzaj rzeczy, a także jej zawartość.
Otrzymasz => (string)"var"
Przykład jest tutaj.
print_r()
po prostu wyświetli treść.
Czy wynik => "var"
Przykład jest tutaj.
var_dump(0.0);
które wyjścia float(0)
vs print_r(0.0);
które wyjścia 0
(stąd prowadzi do możliwego pomylenia typu) ...
Jeśli pytasz, kiedy powinieneś użyć, zazwyczaj używam print_r()
do wyświetlania wartości i var_dump()
problemów z typami zmiennych.
var_dump
wyświetla uporządkowane informacje o obiekcie / zmiennej. Obejmuje to typ i wartości. Podobnie jak print_r
tablice są powtarzane i wcięte.
print_r
wyświetla czytelne dla człowieka informacje o wartościach w formacie prezentującym klucze i elementy tablic i obiektów.
Najważniejszą rzeczą, na którą należy zwrócić uwagę, jest var_dump
typ wyjściowy, a także wartości, podczas gdy print_r
nie.
Znaczące różnice między var_dump
iprint_r
obie funkcje zrzucają informacje o zmiennej , ale var_dump
wiele parametrów, które zostaną zrzucone, przy czym jak print_r
można wziąć dwa parametry, z których pierwszy parametr to zmienna, którą chcesz zrzucić, a drugi to wartość logiczna.
var_dump
nie może zwrócić żadnej wartości, może jedynie zrzucić / wydrukować wartości, gdzie jako print_r może zwrócić informacje o zmiennej, jeśli ustawimy drugi parametr print_r
na true . Zwrócona wartość print_r
będzie w formacie ciągu .
Informacje drukowane przez print_r
są znacznie bardziej w czytelnym formacie, w którym var_dump
drukowane są surowe wartości.
print_r
Funkcja może być używana w wielu kontekstach, gdzie var_dump
może być używana do celów debugowania, głównie dlatego, że nie może zwrócić wartości.
ob_start(); var_dump($var); $dump=ob_get_clean();
Dodatkowo zalecałbym umieszczenie wyjścia var_dump () lub printr we wstępnym tagu podczas wysyłania do przeglądarki.
print "<pre>";
print_r($dataset);
print "</pre>";
Daje bardziej czytelny wynik.
var_dump($var)
pokazuje szczegółowe informacje, podając dodatkowe szczegóły dotyczące
W przypadku dużych tablic print_r może wyświetlać znacznie więcej informacji niż jest to przydatne. Możesz go przyciąć w ten sposób, wyświetlając pierwsze 2000 znaków lub dowolną liczbę, których potrzebujesz.
echo "<pre>" . substr(print_r($dataset, 1), 0, 2000) . "</pre>";
var_dump (): -
Przykład: -
<?php
$a = array(1, 2, array("a", "b", "c"));
var_dump($a);
?>
wynik :-
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 (): -
Przykład: -
<pre>
<?php
$a = array ('a' => 'apple', 'b' => 'banana', 'c' => array ('x', 'y', 'z'));
print_r ($a);
?>
</pre>
Wynik:-
<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 () i var_dump () to funkcje debugowania tablicy używane w PHP do celów debugowania. Funkcja print_r () zwraca klucze macierzy i ich elementy jako Array ([klucz] = wartość), podczas gdy funkcja var_dump () zwraca listę macierzy wraz z kluczami macierzy o typie i długości danych, np. Array (array_length) {[0] = string (1) „a”}.
Możemy przekazać wiele parametrów za pomocą var_dump, takich jak:
var_dump("array1",$array1,"array2",$array2);