زبان برنامه نویسی PHP به عنوان محبوبترین زبان برنامه نویسی تحت وب طیف گستردهای از توابع داخلی و دستورهای مختلف را شامل میشود. آشنایی با این دستورها و توابع برای افزایش بهرهوری و سرعت کد نویسی ضروری است. در این بین دستور echo در PHP به عنوان یکی از پرکاربردترین و متداولترین دستورات این زبان شناخته میشود. برنامهنویسان از این دستور برای چاپ پیام در خروجی، چاپ نتایج حاصل از محاسبات و دیباگ و بررسی کد استفاده میکنند. در مطلب پیش رو از مجله فرادرس سعی شده است تا به طور کامل دستور echo در PHP همراه با کاربردها، موارد استفاده و چندین مثال کاربردی مورد بررسی قرار گیرد.
با مطالعه این مطلب ضمن آشنایی با سینتکس و نحوه کار دستور echo به لطف ارائه مثالهای کاربردی متنوع به خوبی با کاربردهای این دستور در دنیای برنامه نویسی آشنا خواهید شد. علاوه بر این، دستور print در PHP به عنوان جایگزین دستور echo برای چاپ مقادیر در خروجی به طور کامل همراه با چندین مثال بررسی خواهد شد. همچنین، تفاوتها، شباهتها و کاربردهای هر کدام از این دو دستور در برنامه نویسی PHP عنوان شده است.
دستور echo در PHP چیست؟
دستور echo در PHP به منظور چاپ یک یا چند رشته در خروجی مرورگر مورد استفاده قرار میگیرد. نکته بسیار مهم در خصوص دستور echo در PHP این است که echo یک تابع در PHP نیست، بلکه یک «ساختار زبان» (language construct) است. بنابراین، میتوان دستور echo را با پرانتز یا بدون پرانتز استفاده کرد. علاوه بر این، دستور echo برخلاف سایر language constructهای موجود در PHP مقدار بازگشتی ندارد.
در صورت نیاز به ارسال چندین پارامتر ورودی به دستور echo نباید آنها را درون پرانتز قرار داد، زیرا باعث بروز خطا در برنامه میشود.
کاربرد دستور echo در PHP چیست؟
بدون شک دستور echo یکی از پرکاربردترین دستورهای موجود در زبان برنامه نویسی PHP است. این دستور کاربردی در زمره language constructهای زبان PHP قرار دارد و به طور گسترده برای چاپ مقادیر مختلف در خروجی مرورگر مورد استفاده قرار میگیرد.
قبل از معرفی و بررسی کاربردهای مختلف دستور echo در PHP لازم است تا ابتدا با نحوه استفاده از این دستور آشنا شوید. بر همین اساس ابتدا سینتکس پیادهسازی دستور echo مورد بررسی قرار خواهد گرفت و در ادامه کاربردهای این دستور ارائه خواهد شد.
سینتکس دستور echo در PHP
سینتکس پیادهسازی دستور echo در PHP بسیار آسان است که در ادامه نیز آورده شده است.
با توجه به سینتکس ارائه شده در بالا دستور echo مقدار مشخص شده $expressions
را در خروجی چاپ خواهد کرد. به این نکته نیز باید توجه داشت که دستور echo برخلاف سایر language constructها مقدار بازگشتی ندارد. علاوه بر این، میتوان از سینتکس خلاصهتر و کوتاهتر برای دستور echo استفاده کرد. سینتکس خلاصه شده دستور echo در PHP به صورت زیر است.
در ادامه نوشته کاربرد دستور echo و نحوه چاپ متغیرها، رشتهها و سایر دادهها با این دستور در قالب مثال عملی آورده شده است.
یادگیری زبان PHP با فرادرس
برای یادگیری زبان PHP در گام نخست باید مفاهیم اولیه برنامه نویسی نظیر الگوریتم و فلوچارت، شیگرایی، ساختارهای دادهای، متغیرها، ساختارهای شرطی، ساختار حلقه و سایر موارد را به خوبی یاد بگیرید. در گام بعدی باید به این نکته توجه داشت که PHP بخشی از ساختار توسعه وب است و فناوری دیگری همچون CSS، HTML و جاوا اسکریپت نیز در طراحی وب مورد استفاده قرار میگیرند. بنابراین، به عنوان یک برنامه نویس PHP باید با این فناوریها نیز آشنا باشید. بعد از یادگیری ساختارهای اولیه زبان PHP باید به سراغ انجام پروژههای مختلف با این زبان بروید و این کار را از پروژهها ساده تا پیچیده دنبال کنید. در نهایت برای حضور موثر در بازار کار PHP نیاز است تا یکی از فریمورکهای محبوب این زبان را نیز یاد بگیرید.
برای شروع یادگیری میتوانید از فیلم آموزش برنامه نویسی PHP فرادرس استفاده کنید که لینک آن در زیر آورده شده است:
برای تکمیل مسیر یادگیری خود نیز میتوانید از فیلمهای آموزش پروژهمحور PHP فرادرس استفاده کنید. لینک تعدادی از این دورهها در زیر آورده شده است:
اگر علاقهمند به یادگیری موضوعات بیشتری در این رابطه هستید، میتوانید مجموعه فیلمهای آموزش PHP فرادرس را مشاهده کنید که لینک آن در ادامه آورده شده است.
مثال های کاربردی دستور echo در PHP
با استفاده از دستور echo میتوان متغیرهایی با نوع دادههای مختلف همچون رشته، عدد صحیح، آرایه و سایر موارد را در خروجی چاپ کرد. بر همین اساس به منظور درک بهتر عملکرد دستور echo و آشنایی با نحوه پیادهسازی آن در این بخش از نوشته چندین مثال کاربردی از پیادهسازی این دستور در زبان برنامه نویسی PHP ارائه شده است.
چاپ متن ساده با دستور echo در PHP
ابتداییترین و سادهترین کاربرد دستور echo استفاده از آن به منظور چاپ رشته در خروجی است. همان طور که پیشتر نیز عنوان شد، میتوان دستور echo را با پرانتز و بدون پرانتز به کار برد. با این وجود بهتر است تا دستور echo بدون پرانتز مورد استفاده قرار گیرد، زیرا استفاده از پرانتز موجب سردرگمی میشود. علاوه بر این، احتمال دارد تا کاربران این دستور را با تابع اشتباه بگیرند. قطعه کد زیر نحوه استتفاده از دستور echo به منظور چاپ رشته در خروجی را نشان میدهد.
1<?php
2echo "Hello World";
3echo("Hello World");
4?>
در مثال بالا دستور echo با پرانتز و بدون پرانتز پیادهسازی شده است. خروجی حاصل از اجرای دستور بالا به صورت زیر خواهد بود.
Hello WorldHello World
با توجه به خروجی ارائه شده اسکریپت PHP عبارت Hello World
را بدون هیچ گونه فاصله خالی چاپ کرده است، زیرا دستور echo خط جدید یا فاصله خالی به رشته مورد نظر اضافه نمیکند.
استفاده از عناصر HTML
یکی دیگر از کاربردهای دستور echo در PHP امکان استفاده از عناصر HTML همراه با رشته است. رشته مورد نظر میتواند حاوی عناصر HTML باشد و در مرورگر نیز به درستی رندر خواهد شد. قطعه کد زیر یک صفحه ساده HTML را با استفاده از دستور echo در خروجی نمایش میدهد. اگر میخواهید آشنایی بهتری با HTML پیدا کنید، پیشنهاد میکنیم مطلب مربوط به زبان برنامهنویسی HTML را در مجله فرادرس مطالعه کنید.
1<?php
2echo "<h1>Basic Webpage.</h1>";
3echo "<p>An example paragraph.</p>"
4?>
خروجی حاصل از اجرای قطعه کد بالا نیز به صورت زیر خواهد بود.
در صورتی که قصد یادگیری طراحی صفحات وب با HTML را دارید میتوانید فیلم آموزشی طراحی وب با HTML فرادرس که لینک آن در ادامه آورده شده است را مشاهده کنید.
چاپ آرگومانهای رشته چندگانه
امکان دریافت چندین آرگومان رشتهای توسط دستور echo در PHP وجود دارد. هر کدام از آرگومانهای دریافتی با استفاده از کاما از یکدیگر جدا میشوند. قطعه کد زیر نحوه دریافت چندین آرگومان توسط دستور echo را نشان میدهد.
1<?php
2echo "Hello ", "World,", " I", " have ", "multiple", " arguments.";
3echo "n", "I am on a new line";
4?>
خروجی حاصل از اجرای قطعه کد بالا به صورت زیر خواهد بود.
Hello World, I have multiple arguments. I am on a new line
الحاق چندین رشته
به جای تعیین چندین آرگومان برای دستور echo به سادگی میتوان رشتههای مختلف را به یکدیگر متصل کرد. برای الحاق رشته در زبان PHP میتوان از عملگر .
بین رشتهها استفاده کرد. قطعه کد زیر الحاق چندین رشته با دستور echo در PHP را نشان میدهد.
1<?php
2echo "Hello " . "World," . " I" . " was " . "multiple" . " strings.";
3echo "n" . "I am on a new line";
4?>
در ادامه خروجی حاصل از اجرای قطعه کد بالا آورده شده است.
Hello World, I was multiple strings. I am on a new line
نمایش مقدار متغیر با دستور echo در PHP
چاپ متغیر با دستور echo بسیار آسان است. برای این منظور کافی است تا متغیر مورد نظر به عنوان ورودی دستور مشخص شود. در خصوص چاپ متغیر با دستور echo برای جلوگیری از بروز خطاهای ناخواسته باید نکاتی را نیز در نظر گرفت. در ادامه مهمترین نکات در خصوص چاپ متغیر با دستور echo آورده شده است.
- برخی «نوعهای دادهای» (Data Types) نظیر آرایهها ممکن است که خروجی صحیحی نداشته باشند.
- برای چاپ متغیری از نوع داده آرایه باید عنصر مورد استفاده مشخص شود.
- برای چاپ متغیرهایی از نوع داده آرایه میتوان از تابع داخلی implode در PHP استفاده کرد.
- متغیرهایی با نوع داده غیر رشتهای به صورت خودکار به نوع داده رشتهای تبدیل میشوند.
قطعه کد زیر نحوه چاپ متغیر با دستور echo را نشان میدهد.
1<?php
2$string = "Hello World";
3$number = 1234;
4$vegetables = ["potato", "carrot", "parsnip", "spinach"];
5
6echo $string . "n" . $number . "n";
7
8echo $vegetables[2];
9echo "n";
10echo implode(" or ", $vegetables);
11?>
خروجی حاصل از اجرای قطعه کد بالا به صورت زیر خواهد بود.
Hello World 1234 parsnip potato or carrot or parsnip or spinach
چاپ نوعهای داده غیر رشتهای
دستور echo به صورت خودکار نوع داده غیر رشتهای را به نوع داده رشتهای تبدیل میکند. قطعه کد زیر یک مسئله ریاضی ساده را نشان میدهد که نتیجه حاصل را به نوع داده رشته تبدیل میکند.
خروجی قطعه کد بالا به صورت زیر خواهد بود.
3
موارد استفاده دستور echo در PHP کدامند؟
بعد از آشنایی با نحوه استفاده و پیادهسازی دستور echo در PHP در این بخش از نوشته موارد استفاده این دستور در زبان برنامه نویسی PHP ارائه شده است. به صورت پیشفرض دستور echo به منظور چاپ مقادیر در خروجی مورد استفاده قرار میگیرد.
برنامهنویسان باتجربه PHP میتوانند با توجه به نیاز خود این دستور را در بخشهای مختلفی مورد استفاده قرار دهند. در نتیجه، با توجه به عملکرد برنامهنویس موارد استفاده دستور echo نیز متفاوت خواهد بود. در ادامه این بخش از نوشته مهمترین موارد استفاده دستور echo آورده شده است.
نمایش پیامهای ساده و پیچیده
سادهترین و ابتداییترین کاربرد دستور echo در PHP چاپ و نمایش پیامهای ساده در مرورگر است. با استفاده از این دستور و ترکیب آن با عناصر HTML میتوان پیامهای متنوعی را در خروجی مرورگر چاپ کرد. قطعه کد زیر نحوه نمایش پیامهای ساده با استفاده از دستور echo را نشان میدهد.
1<!DOCTYPE html>
2<html>
3<body>
4
5<?php
6 // Using echo to display text messages
7 echo "<h1>Enjoy learning PHP with IncludeHelp.</h1>";
8 echo "<p><i>Welcome to the world of PHP!!</i></p>";
9?>
10
11</body>
12</html>
خروجی حاصل از اجرای قطعه کد بالا به صورت زیر خواهد بود.
چاپ نتایج محاسبات و عملیات اسکریپت PHP
یکی دیگر از موارد مهم استفاده دستور echo چاپ نتایج محاسبات و عملیات مربوط به اسکریپتهای PHP است. برنامهنویس با توجه به نیاز پروژه اغلب محاسبات و عملیات مختلفی را در اسکریپتهای PHP پیادهسازی میکند که با استفاده از دستور echo میتواند نتایج مربوط به آنها را در خروجی چاپ کند. قطعه کد زیر نحوه چاپ نتایج محاسبات با استفاده از دستور echo را نشان میدهد.
1<!DOCTYPE html>
2<html>
3<body>
4
5<?php
6 // Using echo to display the content of a variable
7 $favoriteColor = "blue";
8 echo "My favorite color is " . $favoriteColor ;
9 $add2nos= 13 +14;
10 echo" <br> The sum of 13&14 is: ". $add2nos;
11?>
12
13</body>
14</html>
خروجی حاصل از اجرای کد بالا در مرورگر به صورت زیر خواهد بود.
چاپ اطلاعات دریافتی از پایگاه داده
«پایگاه داده» (Database) یکی از مهمترین مفاهیم در توسعه و طراحی نرمافزار است. در طراحی وبسایت با زبان PHP نیز برنامهنویس برای دریافت اطلاعات باید با پایگاه داده ارتباط برقرار کند. در این بین گاهی نیاز است تا اطلاعات دریافتی از پایگاه داده در خروجی برنامه چاپ شود. قطعه کد زیر نحوه چاپ اطلاعات دریافتی از پایگاه داده را نشان میدهد.
1<!-- Users Card -->
2 <div class="col-md-4 d-flex justify-content-center">
3 <div class="card shadow mb-4 mt-4" style="width: 20rem;">
4
5 <div class="card-body ">
6
7 <h5 class="card-title mt-4 text-center fs-2 ">تعداد کاربران
8 </h5>
9
10 <p class="card-text text-center text-muted mt-4 fs-4">
11 <?php echo $user_count ?>
12 </p>
13
14 </div>
15 </div>
در مثال بالا مقدار دریافتی از پایگاه داده درون متغیر $user_count
ذخیره شده است و توسط دستور echo در خروجی چاپ میشود. اگر به مبحث پایگاه داده در PHP علاقهمند هستید میتوانید فیلم آموزشی پیادهسازی انواع لاگین و ثبتنام با PHP فرادرس که لینک آن در ادامه آورده شده است را مشاهده کنید.
اشکالزدایی و بررسی کد با چاپ مقادیر در مراحل مختلف
اشکالزدایی بخشی جداییناپذیر از فرایند توسعه و طراحی نرمافزار است. برنامهنویسان در فرایند توسعه نرمافزار ممکن است با خطاهای مختلفی روبرو شوند. برای این منظور باید در طی فرایندی مشخص نسبت به خطایابی و برطرف کردن خطای رخ داده اقدام کنند. یکی از روشهای رایج در تشخیص خطاهای برنامه چاپ کردن مقادیر متغیرها در مراحل مختلف است. با توجه به کارکرد دستور echo در PHP بسیاری از برنامهنویسان از این دستور به منظور چاپ مقادیر در خروجی استفاده میکنند تا خطاهای برنامه را تشخیص دهند. قطعه کد زیر نحوه استفاده از دستور echo به منظور اشکالزدایی و بررسی کد را نشان میدهد.
1<?php
2
3 global $variable;
4 $active_category = false;
5 $active_author = false;
6 $active_article = false;
7 $active_dashboard = false;
8
9?>
10
11 <span class="fs-4 p-3"><?php echo $variable; ?></span>
12
13 <span class="fs-4 p-3">پنل مدیریت</span>
14 <hr>
15
16<?php
17
18 switch ($variable) {
19
20 case "dashboard":
21 $active_dashboard = true;
22 break;
23
24 case "article":
25 $active_article = true;
26 break;
27
28 case "author":
29 $active_author = true;
30 break;
31
32 case "category":
33 $active_category = true;
34 break;
35
36 }
37?>
در مثال بالا در هر مرحله با توجه به مقدار متغیر $variable
سایر متغیرهای مورد استفاده در برنامه مقداردهی خواهند شد. بر همین اساس به منظور اشکالزدایی کد مقدار متغیر $variable
با استفاده از دستور echo در خروجی چاپ میشود. خروجی حاصل از اجرای کد بالا به صورت زیر خواهد بود.
تفاوت print با دستور echo در PHP
دستور print همانند echo به منظور چاپ مقادیر در خروجی مورد استفاده قرار میگیرد. این دستور نیز همانند echo در دسته language constructها قرار دارد و یک تابع نیست. دستور print در هر لحظه تنها یک آرگومان واحد را به عنوان ورودی دریافت میکند و همیشه نیز مقدار ۱ را بر میگرداند.
دستور print و echo تقریباً با یکدیگر مشابه هستند. مهمترین تفاوتهای دستور print و echo به شرح زیر است.
- دستور print امکان دریافت چندین آرگومان مختلف را ندارد.
- دستور print در هر لحظه تنها یک مقدار را بر میگرداند.
- سرعت اجرای دستور print نسبت به echo پایینتر است.
- برخلاف دستور echo امکان خلاصه کردن دستور print وجود ندارد.
در مجموع باید عنوان کرد که دستور print در مقایسه با echo بسیار کمتر مورد استفاده قرار میگیرد، اما همچنان در بسیاری از اسکریپتهای PHP از این دستور استفاده میشود. در ادامه این بخش مهمترین نکات در خصوص دستور print در PHP آورده شده است.
سینتکس دستور print در PHP
سینتکس پیادهسازی دستور print شباهت بسیاری به دستور echo دارد. این دستور تنها یک پارامتر را به عنوان ورودی دریافت میکند و این مقدار را نیز در خروجی چاپ خواهد کرد. در ادامه سینتکس این دستور آورده شده است.
نکته مهم در خصوص دستور print این است که برخلاف دستور echo این دستور مقدار بازگشتی از نوع عدد صحیح دارد. در ادامه این بخش چندین مثال کاربردی از پیادهسازی دستور print و موارد استفاده آن در زبان PHP آورده شده است.
دستور print تنها با یک آرگومان
یکی از بزرگترین تفاوتهای موجود بین دو دستور print و echo در PHP این است که دستور print تنها از یک آرگومان ورودی پشتیبانی میکند. دستور print همانند echo از پرانتز نیز پشتیبانی میکند ولی در عمل استفاده چندانی از آن نمیشود. قطعه کد زیر نحوه چاپ رشته با دستور print در PHP را نشان میدهد.
1<?php
2print "Foo Bar";
3print ("Foo Bar");
4?>
در مثال بالا دستور print دو مرتبه با پرانتز و بدون پرانتز پیادهسازی شده است. خروجی قطعه کد بالا نیز به صورت زیر خواهد بود.
Foo BarFoo Bar
خروجی قطعه کد بالا در یک خط قرار گرفته است، زیرا دستور print به صورت خودکار خط جدیدی ایجاد نمیکند.
الحاق رشته با دستور print در PHP
همان طور که پیشتر نیز عنوان شد، دستور print تنها یک آرگومان را به عنوان ورودی میپذیرد. با توجه به این مورد ممکن است نیاز باشد تا چندین رشته به یکدیگر الحاق شوند. برای الحاق رشته در PHP میتوان از عملگر .
استفاده کرد. قطعه کد زیر نحوه الحاق رشته با دستور print در PHP را نشان میدهد.
1<?php
2print "Hello World," . " I am using print.";
3print "n" . "I am on a new line";
4?>
خروجی قطعه کد بالا به صورت زیر خواهد بود.
Hello World, I am using print. I am on a new line
با توجه به استفاده از کاراکتر خط جدید n
خروجی کد بالا در دو خط جداگانه قرار گرفته است.
چاپ متغیر با دستور print در PHP
نحوه پیادهسازی و چاپ متغیرها با دستور print مشابه echo در PHP است. نکات بسیار مهم در خصوص چاپ متغیر با دستور print این است که اشیا و ساختارهای داده همچون آرایه باید به عنصر صحیح اشاره کنند. در غیر این صورت در زمان چاپ متغیرها امکان بروز خطا وجود دارد. علاوه بر این، نوعهای غیر رشتهای به صورت خودکار به رشته تبدیل میشوند که همین مورد منجر به بروز خطا خواهد شد. در ادامه مثالی در خصوص نحوه نمایش متغیرهایی همچون رشته، عدد صحیح و آرایه با دستور print در PHP آورده شده است.
1<?php
2$string = "Hello World";
3$number = 5678;
4$fruit = ["apple", "banana", "grapes", "pear"];
5
6print $string . "n" . $number . "n";
7
8print $fruit[2];
9print "n";
10print implode(" or ", $fruit);
11?>
خروجی قطعه کد بالا به صورت زیر خواهد بود.
Hello World 5678 grapes apple or banana or grapes or pear
چاپ متغیرهای غیر رشتهای
یکی از نکات مهم در زمان استفاده از دستور print برای چاپ متغیرها این است که نوعهای دادهای غیر رشتهای توسط این دستور به صورت خودکار به نوع رشتهای تبدیل میشوند. مثال ساده ریاضی زیر برای درک بهتر عملکرد دستور print برای چاپ متغیرهای غیر رشتهای آورده شده است.
1<?php
2print 11 + 42;
3?>
خروجی کد بالا نیز به صورت زیر خواهد بود.
53
سوالات متداول
در این بخش از نوشته سعی شده است تا به متداولترین و پرتکرارترین سوالات مربوط دستور echo در PHP پاسخ داده شود.
print یا echo در PHP کدامیک برای چاپ خروجی بهتر است؟
استفاده از دستور echo به دلیل سادگی، سرعت بالا و قابلیت مدیریت چندین آرگومان گزینه بهتری نسبت به print برای چاپ خروجی است.
print یا echo در PHP کدامیک سریعتر است؟
دستور echo به دلیل نداشتن مقدار بازگشتی از سرعت بالاتری برخوردار است. همچنین، این دستور از نظر زمان اجرا بسیار کارآمدتر است.
آیا امکان استفاده از چندین پارامتر در دستور print وجود دارد؟
خیر، دستور print در PHP تنها مجاز است که یک پارامتر را برای ورودی دریافت کند. در نقطه مقابل دستور echo امکان دریافت چندین پارامتر ورودی را دارد.
خروجی دستور echo در کجا قرار میگیرد؟
دستور echo رشتههای ورودی را به سادگی در خروجی قرار میدهد. اگر کاربر در حال مشاهده محتوا در مروگر باشد، آنگاه خروجی در مرورگر نمایش داده میشود. همچنین، اگر کاربر در حال کار با خط فرمان باشد، آنگاه خروجی در خط فرمان نمایش داده خواهد شد.
جمعبندی
زبان برنامه نویسی PHP به عنوان یک زبان تحت وب شناخته میشود. یکی از ویژگیهای مهم زبانهای تحت وب این است که با اطلاعات خروجی برای کاربر سر و کار دارند. به عنوان مثال، گاهی نیاز است تا با استفاده از زبان PHP اطلاعات مشخصی از پایگاه داده دریافت و در مرورگر کاربر نمایش داده شود. متداولترین روش برای چاپ خروجی در مرورگر استفاده از دستور echo در PHP است. دستور echo در PHP در موارد مختلفی همچون نمایش پیامهای ساده، چاپ نتایج حاصل از محاسبات و اشکالزدایی و بررسی کد با چاپ مقادیر متغیرها کاربرد دارد.
بر همین اساس در این مطلب از مجله فرادرس سعی شد تا ضمن آشنایی با سینتکس دستور echo، کاربردها و موارد استفاده از آن نیز به طور کامل مورد بررسی قرار گیرد. همچنین، برای درک بهتر نحوه عملکرد دستور echo چندین مثال کاربردی از پیادهسازی این دستور نیز ارائه شد. در ادامه نیز دستور print در PHP به عنوان روشی جایگزین برای چاپ مقادیر در خروجی به طور کامل همراه با سینتکس و مثالهای کاربردی مورد بررسی قرار گرفت.
source