آموزش PHP – نمایش با echo و print – قسمت 2

 

دستورات echo یا print دقیقا چیزی که شما به مرورگر بازتاب می دهید را نشان می دهند، نه چیزی بیشتر و نه چیزی کمتر. اگر هیچ تگی از html را بازتاب یا echo نکنید، هیچ کدام هم فرستاده نمی شوند.

PHP به بعضی از کاراکترهای معین که خروجی را فرمت بندی می کنند، اجازه دسترسی می دهد ولی آنها تگ های HTML نیستند. کاراکترهای ویژه HTML خروجی را فقط از echo و print در سورس کد تحت تاثیر قرار می دهند و نه برای نمایش روی یک صفحه وب. برای مثال اگر می خواهید یک خط جدید در خروجی PHP یا سورس کد HTML اضافه کنید می بایستی از کاراکتر ویژه (\n) که به PHP می گوید به خط جدید برو، استفاده کنید. اگرچه این کاراکتر ویژه یک خط جدید را آغاز می کند ولی در خروجی که شما بصورت HTML روی صفحه نمایش می بینید متوجه این خط جدید نمی شوید برای اینکه HTML فاصله ها یا خط ها را یکی بیشتر حساب نمی کند مگر آنکه از تگ مخصوص آن استفاده کنید.

جدول زیر بخوبی این سه تفاوت را در نوشتن کد، در سورس کد درست شده HTML و در نهایت چیزی که نمایش داده می شود، نشان می دهد :

چیزی که روی صفحه نمایش می بینید سورس کد HTML دستور echo
سلام دنیا! سلام دنیا! echo “سلام
دنیا!”;
سلام دنیا!من اینجام! سلام دنیا!من اینجام! echo “سلام
دنیا!”;
echo “من اینجام!”;
سلام دنیا!من اینجام! سلام دنیا!
من اینجام!
echo “سلام
دنیا!\n”;
echo “من اینجام!”;
سلام دنیا!
من اینجام!
سلام دنیا! 

<br />
من اینجام!

echo “سلام
دنیا!”;
echo “<br />”;
echo “من اینجام!”;
 سلام دنیا!
من اینجام!

سلام دنیا!

<br />
من اینجام!

 echo “سلام”;
echo ” دنیا!
<br />\n”;
echo “من اینجام!”;

 

همانطور که دیدید این جدول تفاوت بین سطوح ساخت یک صفحه وب در PHP را خلاصه می کند. برای نگاه دقیق تر به این تفاوت ها، به دو دستور print زیر توجه کنید :

print “خط 1”;
print “خط 2”;

وقتی که این خط ها در یک اسکریپت قرار می دهید، انتظار دارید که صفحه وب این خروجی را نمایش بدهد :

خط 1
خط 2

ولی خروجی این نیست و شما خروجی زیر را می بینید :

خط 1خط 2

اگر به سورس کد صفحه وب در مرورگر نگاه کنید، دقیقا همان چیزی که در مروگر دیدید را می بینید :

خط 1خط 2

 

توجه کنید که خطی که به مرورگر فرستاده می شود دقیقا حاوی کاراکترهایی هستند که شما چاپ کردید. نه بیشتر، نه کمتر. رشته های کاراکتری که شما چاپ می کنید حاوی هیچگونه فضایی نیستند. در نتیجه هیچگونه فضایی هم بین خط ها ظاهر نمی شود. همچنین توجه کنید که خط ها بر روی یک خط print شده اند. اگر شما یک خط جدید می خواهید می بایستی که یک سیگنال حاوی خط جدید بفرستید. برای فرستادن این سیگنال در PHP باید کاراکتر ویژه \n را چاپ کنید. دستورات بالا را بدین صورت تغییر بدهید :

print “خط 1\n”;
print “خط 2”;

 

حالا خروجی دقیقا چیزی است که می خواهید؟ خب، نه! چیزی که در سورس کد می بینید شبیه چیزی که شما می خواهید است ولی  در صفحه وب، خروجی را اینگونه است :
خط 1 خط 2

سورس کد بصورت زیر است :
خط 1
خط 2

\n کارش را بخوبی انجام داده است. یک خط جدید در خروجی ایجاد کرده است ولی HTML محتوا را در یک خط نشان می دهد. اگر می خواهید HTML دو خط را نمایش دهد، می بایستی که از یک تگ مانند تگ <br /> استفاده کنید. حالا کاراکتر ویژه انتهای خط را به یک تگ HTML در کد تغییر بدهید :

print “خط 1<br />”;
print “خط 2”;

 

حالا دقیقا چیزی که می خواهید را روی صفحه وب می بینید :

خط 1

خط 2

اگر به سورس کد نگاه کنید، کد زیر را می بینید :

خط 1<br />خط 2

از \n با فکر باز استفاده کنید. به عبارت دیگر کد HTML شما بدون این کاراکتر ویژه خط های واقعا طولانی خواهد داشت. برای مثال اگر بخواهید یک فرم طولانی را چاپ کنید، تمام این فرم ممکن است یک خط طولانی در سورس کد باشد حتی اگر در صفحه وب به خوبی نمایش داده شوند. از \n برای شکستن سورس کد HTML به خط های معقول استفاده کنید. این کار بسیار ساده تر برای امتحان و عیب یابی سورس کد است.

 



برای مشاهده لیست کامل درس های PHP سایت اینجا را کلیک کنید.


جدیدترین درس های PHP ما را از طریق پست الکترونیک دریافت کنید

آدرس email خود را در این کادر وارد کنید.

توسط FeedBurner



تبلیغات :



   

   

1 دیدگاه دربارهٔ «آموزش PHP – نمایش با echo و print – قسمت 2»

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *