PHP از دستورات echo و print برای نمایش خروجی در مرورگر یا کنسول PHP استفاده میکند. هر دو ساختارهای زبان هستند و نه توابع، به این معنی که آنها بخشی از زبان PHP هستند. در نتیجه، استفاده از پرانتز در آنها اختیاری است. این دستورات معمولاً برای نمایش متن، اعداد، متغیرها و حتی محتوای HTML بهصورت مستقیم در یک وبسایت به کار میروند. با اینکه هر دو یک هدف را دنبال میکنند، تفاوتهای کوچکی میان آنها وجود دارد. echo میتواند چندین پارامتر را بپذیرد و سریعتر از print است، که مقداری برابر با 1 برمیگرداند؛ همین ویژگی باعث میشود که print برای استفاده در عبارات مناسب باشد.
Echo چیست؟
echo یک دستور در PHP است که دادهها را نمایش میدهد. این دستور مقداری برنمیگرداند اما میتواند چندین مقدار را بهطور همزمان تولید کند.
نحوه نگارش (Syntax)
دستور echo با سینتکس زیر استفاده میشود:
echo(string ...$expressions): void
دستور echo یک یا چند عبارت را بدون افزودن خطوط جدید یا فاصلههای اضافی نمایش میدهد.
استفاده پایهای از echo در PHP
در اینجا مثالی از نحوه عملکرد دستور echo در PHP آورده شده است:
<?php $name = "Rahul"; echo "Hello " . $name . " How are you?" ?>
خروجی
این دستور خروجی زیر را تولید میکند −
Hello Rahul How are you?
استفاده از رشته با علامت تککوتیشن در echo
از آنجا که رشتههای داخل کوتیشن دوتایی در PHP شباهت زیادی به رشتههای داخل کوتیشن تکی دارند، دستور زیر همان خروجی را تولید میکند.
<?php echo 'Hello ' . $name . ' How are you?'; ?>
استفاده از رشته با علامت کوتیشن دوتایی در echo
رشتههای داخل کوتیشن دوتایی مقدار متغیرها را نمایش میدهند. بنابراین، دستور زیر مقدار متغیر “$name” را قبل از چاپ خروجی وارد میکند.
<?php $name = "Rahul"; echo "Hello $name How are you?"; ?>
خروجی
این دستور نتیجهی زیر را تولید میکند
Hello Rahul How are you?
رشته با کوتیشن تکی متغیرها را به صورت متن ساده در نظر میگیرد
اما رشتهای که با کوتیشن تکی نوشته شود، متغیر “$name” را به همان صورت متن ساده و بدون جایگزینی مقدار آن نمایش میدهد.
<?php $name = "Rahul"; echo 'Hello $name How are you?'; ?>
خروجی
این دستور خروجی زیر را تولید میکند −
Hello $name How are you?
ارسال چندین آرگومان در echo
رشتههایی که به دستور echo ارسال میشوند میتوانند به صورت جداگانه و چند آرگومانی یا به صورت ترکیب شده و یک آرگومان واحد ارسال شوند. بنابراین، هر دو دستور زیر معتبر هستند
<?php echo 'Hello ', 'how ', 'are ', 'you?', "\n"; echo 'Hello ' . 'how ' . 'are ' . 'you?' . "\n"; ?>
خروجی
خروجی مثال بالا به صورت زیر خواهد بود
Hello how are you?
Hello how are you?
دستورات echo متوالی بدون خط جدید
توجه داشته باشید که خروجی دو دستور echo پشت سر هم، در صورتی که از کاراکتر خط جدید استفاده نشود، در یک خط نمایش داده میشود. به مثال زیر توجه کنید
<?php echo "hello"; echo "world";
خروجی
این کد نتیجهی زیر را تولید میکند
helloworld
print چیست؟
دستور print در PHP مشابه دستور echo است و میتوان از آن به جای echo در بسیاری از مواقع استفاده کرد. print نیز یک ساختار زبان است، بنابراین نمیتوان به صورت تابع از آن با پرانتز استفاده کرد، مانند print
یا print()
.
تفاوت اصلی این است که دستور print فقط یک آرگومان میپذیرد و همیشه مقدار 1 را بازمیگرداند.
نحوه نگارش (Syntax)
دستور print مشابه echo است اما یک عبارت را نمایش میدهد. سینتکس آن به صورت زیر است −
print(string $expression): int
استفاده پایهای از print در PHP
در ادامه، نمونهای از نحوه استفاده ساده از دستور print در PHP آمده است
<?php $name = "Rajesh"; print "Hello " . $name . " How are you?\n"; print "Hello $name How are you?"; ?>
خروجی
خروجی کد بالا به صورت زیر خواهد بود
Hello Rajesh How are you?
Hello Rajesh How are you?
نمایش رشتههای چندخطی با استفاده از print
هر دو دستور echo و print میتوانند رشتههای چندخطی که در بیش از یک خط در ویرایشگر نوشته شدهاند را نمایش دهند. به مثال زیر توجه کنید −
<?php print " Multi-line string can be output by echo as well as print statement in PHP "; ?>
خروجی
این کد خروجی زیر را ایجاد میکند −
Multi-line
string can be output
by echo as well as
print statement in PHP
اگر print را با echo جایگزین کنیم، خروجی بدون تغییر باقی میماند.
مقایسه echo و print: تفاوتهای کلیدی
در جدول زیر، تفاوتهای اصلی بین echo و print آورده شده است
چه زمانی از echo یا print استفاده کنیم؟
در بیشتر مواقع، استفاده از echo در PHP بهتر از print است؛ زیرا سرعت بیشتری دارد، میتواند چند رشته را بهطور همزمان (با جدا کردن توسط ویرگول) نمایش دهد و مقداری بازنمیگرداند، که این موضوع باعث کارایی بالاتر آن برای نمایش سادهی متن میشود. از طرف دیگر، print برای موقعیتهایی مناسبتر است که نیاز به بازگرداندن مقدار در یک عبارت دارید، چون همیشه مقدار 1 را بازمیگرداند و فقط میتواند یک رشته را در هر بار نمایش دهد.
هر دو دستور echo و print روشهای مؤثری برای نمایش داده در PHP هستند. دستور echo به دلیل عملکرد سریعتر معمولاً ترجیح داده میشود، اما print زمانی مفید است که به یک مقدار بازگشتی نیاز داشته باشید.
یادگیری تفاوتهای این دو دستور به شما کمک میکند تا در پروژههای PHP به شکل مؤثرتری از آنها استفاده کنید. ✅