PDA

View Full Version : فرق print & echo



Javad.Kashi
دوشنبه 24 خرداد 1389, 16:11 عصر
سلام به همه
لطفا فرق ميان
print & echo
را به صورت کامل توضيح دهيد؟

BEHESHT*
دوشنبه 24 خرداد 1389, 18:02 عصر
echo فقط خروجی رو نمایش می ده هیچ مقدار بازگشتی نداره ولی print در صورت استفاده یک مقدار بازگشتی داره و موفقیت خودش در اجرا و نمایش رو اعلام میکنه

و استفاده کردن از Echo سرعت خیلی بیشتری از print داره و در جاهایی که نیاز نیست مقدار بازگشتی باشه استفاده از echo پیشنهاد میشه

امیدوارم اطلاعاتم درست بوده باشه

funpatogh
دوشنبه 24 خرداد 1389, 21:23 عصر
در
echo
برای اتصال دو رشته هم میشه از . و هم از , استفاده کرد اما در print فقط از . میشه استفاده کرد
یک مثال دیگه که میتونم بگم از فرق این دو تا


<?php
$number=10;
echo $number?$number:"";
echo "<br>";
$number?print $number:print "";
?>

motahhari
یک شنبه 18 دی 1390, 02:13 صبح
الان مثلا من بخوام این کد رو با echo بنویسم چیکار باید بکنم؟


while($status = mysql_fetch_array( $statuses_result ))
{
Print " <hr />".$status['post'] . "";
}

چندبار با echo نوشتم خطا داد.

MMSHFE
یک شنبه 18 دی 1390, 09:27 صبح
while($status = mysql_fetch_assoc($statuses_result)) {
echo "<hr />{$status['post']}<br />\n";
}

یک نکته دیگه اینکه echo تابع نیست و یک ساختار زبانی هست و سرعت پردازش بالاتری داره. موفق باشید.

motahhari
دوشنبه 19 دی 1390, 18:39 عصر
الان من بخوام برای خروجی این <div> تعریف کنم و کلاس css بهش بدم کجاش باید <div> و </div> بگذارم؟

mbf5923
دوشنبه 19 دی 1390, 18:45 عصر
echo "<div>{$status['post']}<\div>\n";

motahhari
دوشنبه 19 دی 1390, 20:08 عصر
echo "<div>{$status['post']}</div>\n";

این کد کلاس قبول نمیکنه. یعنی وقتی کلاس تعریف میکنم براش خطا میده. چرا؟!


echo "<div class="signature">{$status['post']}</div>\n";

parsidev
دوشنبه 19 دی 1390, 20:14 عصر
اگه رشته رو با " آغاز کردین دیگه نباید در داخل متن از اون استفاده کنید و می تونید از تک کوتیشین استفاده کنید:


echo "<div class='signature'>{$status['post']}</div>\n";

و اگر همچنان مایل بودین از دابل کوتیشن استفاده کنید باید یه \ قبلش بزارین:


echo "<div class=\"signature\">{$status['post']}</div>\n";

motahhari
دوشنبه 19 دی 1390, 22:49 عصر
echo "<div class='signature'>{$status['post']}</div>\n";
الان من از این کد استفاده میکنم ولی یک مشکل دارم اونم اینه که post رو فقط به صورت متن بارگزاری میکنه. یعنی کدهای html داخلش رو اجرا نمیکنه. وقتی دابل کوتیشن echo رو تبدیل به کوتیشن میکنم هم خطا میده. چطوری میشه این مشکل رو حل کرد؟

امیـرحسین
سه شنبه 20 دی 1390, 00:49 صبح
پیشنهاد میکنم حتما این توضیح رو مطالعه کنید (خیلی جامع و کامله): Stack Overflow - Reference: Comparing PHP's print and echo (http://stackoverflow.com/a/7095292/547185)
(با توجه به عنوان تاپیک)

morteza_naderloo
سه شنبه 20 دی 1390, 08:42 صبح
echo "<div class='signature'>{$status['post']}</div>\n";
الان من از این کد استفاده میکنم ولی یک مشکل دارم اونم اینه که post رو فقط به صورت متن بارگزاری میکنه. یعنی کدهای html داخلش رو اجرا نمیکنه. وقتی دابل کوتیشن echo رو تبدیل به کوتیشن میکنم هم خطا میده. چطوری میشه این مشکل رو حل کرد؟
بسته به نوع کارت میتونی از این روش استفاده کنی !


<?php
$status['post']='asdasdasda';
$statuspost=$status['post'];
echo "<div class='signature' >$statuspost</div>";
?>

hrzrahimi
چهارشنبه 21 دی 1390, 12:16 عصر
echo "<div class='signature'>".$status['post']."</div>";

به همین راحتی