PDA

View Full Version : خروجی لحظه ای



joker
پنج شنبه 24 دی 1394, 20:03 عصر
فرض کنید یک فایل php داریم
echo "fist";
sleep(10)
echo "2222";

در حالت عادی وقتی در مرورگر این فایل صدا زده بشه با یک تاخیر 10ثانیه ای یکجا جواب ها چاپ میشه

حالا سوال
چه تنظیمی میتونم بکنم که به محض رسیدن به اکو اول در مرورگر نمایش را داشته باشم ؟ آیا این امکان هست اصلا؟
فقط دستور flush را میتونم استفاده کنم ؟

0xEHSAN
پنج شنبه 24 دی 1394, 20:38 عصر
درود دوست عزیز برای مرورگر مشکل ایجاد میکنه چونکه انتهای کدها رو نداره که شکل دستوری شونو چاپ کنه و اگه اونها رو چاپ کنه به مشکل بر میخوره بنظرم از جاوا اسکریپت استفاده بشه مطمن تره

joker
چهارشنبه 19 اسفند 1394, 14:56 عصر
من تعداد زیادی درخواست همزمان دارم ( مرورگر ها حداکثر6 درخواست همزمان را ساپورت میکنن ) البته روی کروم که ظاهرا 6تا هست ولی در عمل من تک به تک میبینم که جواب ها برمیگردند.

دیگه چه راه حلی پیشنهاد دارید دوستان ؟

us1234
چهارشنبه 19 اسفند 1394, 17:43 عصر
echo "fist";
ob_end_flush();
flush();
sleep(10);
echo "2222";

joker
پنج شنبه 20 اسفند 1394, 10:53 صبح
دستورات flush را اول از همه تست کردم ولی جوابها یکجا و در انتهای عملیات اسکریپت نمایش داده میشدند ( گفتم شاید چون سرور ویندوزی دارم مشکلی داره ، روی یک سرور لینوکسی هم تست کردم همین مشکل سرجاش بود )
آیا کانفیگ خاصی میخواد؟

us1234
پنج شنبه 20 اسفند 1394, 16:11 عصر
دستورات flush را اول از همه تست کردم ولی جوابها یکجا و در انتهای عملیات اسکریپت نمایش داده میشدند ( گفتم شاید چون سرور ویندوزی دارم مشکلی داره ، روی یک سرور لینوکسی هم تست کردم همین مشکل سرجاش بود )
آیا کانفیگ خاصی میخواد؟

روی لوکال جواب میده ! ولی آنلاین نه ...

فعلا وقت ندارم ، باید در این مورد تحقیق کنم :)

us1234
شنبه 07 فروردین 1395, 12:50 عصر
echo "fist";
ob_end_flush();
flush();
sleep(10);
echo "2222";



روی لوکال جواب میده ! ولی آنلاین نه ...

فعلا وقت ندارم ، باید در این مورد تحقیق کنم :)


علت اینکه کد بالا در هاست جواب نداد بخاطرفعال بودن gzip بود .