Между чем различие var_dump()
и print_r()
с точки зрения выкладывания массива как строка?
Функция 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
)
More Info
var_dump ()
покажет вам тип объекта, а также его содержимое.
Итак, вы получите => (строка) "var"
Пример здесь.
print_r ()
просто выведет содержимое.
Будет вывод => "var"
Пример здесь.
Если вы спрашиваете, когда что использовать, то я обычно использую print_r()
для отображения значений и var_dump()
для проблем с типами переменных.
var_dump
отображает структурированную информацию об объекте / переменной. Сюда входят тип и значения. Подобно print_r
массивы рекурсивны и имеют отступ.
print_r
отображает удобочитаемую информацию о значениях с форматом, представляющим ключи и элементы для массивов и объектов.
Самая важная вещь, на которую следует обратить внимание, это то, что var_dump
выводит тип и значения, а print_r
- нет.