Back to Top


1395/07/05 - 12:39

تفاوت بین توابع var_dump‌ و print_r در php

توابع var_dump و print_r در php برای نمایش اطلاعات در مورد یک متغیر به کار میروند که البته در این زمینه دارای تفاوت های مختصری نیز هستند

کلمات کلیدی

var_dumpprint_rfunctionphpتوابعمتغیرvariable

تفاوت بین توابع var_dump‌ و print_r در php

تفاوت توابع var_dump و print_r از نظر نمایش محتوای متغیرها و به خصوص متغیرهای آرایه ای چیست؟

تابع var_dump اطلاعات ساختاری (شامل نوع و مقدار) در رابطه با متغیرها را نمایش می دهد. اگر متغیر آرایه ای باشد، آنها به صورت بازگشتی به همراه مقادیری که دارند گسترش می یابند تا ساختار را نشان دهند. این تابع همچنین نشان می دهد که کدام مقادیر و ویژگی های شی مرجع هستند.

تابع print_r اطلاعاتی در رابطه با یک متغیر نشان می دهد که توسط انسان قابل خواندن باشند. در مورد متغیرهای آرایه این تابع در یک فرمت شامل کلید و عنصر خروجی را ارایه می دهد. همین حالت برای اشیا نیز صدق می کند.

مثال:

$obj = (object) array('qualitypoint', 'technologies', 'India');
var_dump($obj)
output:
object(stdClass)#1 (3) {
 [0]=> string(12) "qualitypoint"
 [1]=> string(12) "technologies"
 [2]=> string(5) "India"
}

print_r($obj)

output:

stdClass Object ( 
 [0] => qualitypoint
 [1] => technologies
 [2] => India
)