PDA

View Full Version : ارسال خروجی به سمت کلاینت ، پس از اجرای *کامل* فایل



tabib_m
دوشنبه 31 اردیبهشت 1386, 17:32 عصر
سلام
میخواستم بدونم راهی هست که تا زمانی که فایل php به صورت کامل اجرا نشده ، هیچ خروجی ای به سمت کلاینت ارسال نشه؟ (اعم از خروجی html و یا ...)

امیدوارم مفهوم باشه

موفق باشید.

musiox
دوشنبه 31 اردیبهشت 1386, 18:15 عصر
اون چیزایی رو که می خوای چاپ کنی توی یه متغیر ذخیره کن . آخر کار اون متغیر رو چاپ کن .

tabib_m
دوشنبه 31 اردیبهشت 1386, 18:47 عصر
این کار به شدت مشکله (مخصوصا در مورد صفحات پر از اطلاعات)
راه منطقی تری نداره؟

musiox
دوشنبه 31 اردیبهشت 1386, 19:20 عصر
بهترین راه جدا کردن کدهای پی اچ پی از اچ تی ام اله .

armin390
دوشنبه 31 اردیبهشت 1386, 19:51 عصر
بافر کردن خروجی
()ob_start
...

Mohammad Minaei
پنج شنبه 03 خرداد 1386, 10:28 صبح
و اگر هم بخواید خروجیتون فشرده بشه کافیه این کد رو قرار بدید:

ob_start ('ob_gzhandler');
.
.
.
ob_end_flush();

musiox
پنج شنبه 03 خرداد 1386, 12:54 عصر
بافر کردن خیلی خوبه ولی بهتر نیست ما کار را راحتر کنیم . ما یه صفحه درست می کنیم که توی اون کد های html و php وجود دارن . اگه حجم این صفحه زیاد بشه ، بعدا که بخوایم اونو دستکاری کنیم یا ببینیم که چکار کردیم به مشکل بر می خوریم . اگه ما کد ها رو از هم جدا کنیم با یه تیر دونشونو زدیم یعنی همون چیزی که شما می خوای و هم خوانا تر شدن و بهتر شدن کار .

armin390
پنج شنبه 03 خرداد 1386, 16:57 عصر
بافر کردن خیلی خوبه ولی بهتر نیست ما کار را راحتر کنیم . ما یه صفحه درست می کنیم که توی اون کد های html و php وجود دارن . اگه حجم این صفحه زیاد بشه ، بعدا که بخوایم اونو دستکاری کنیم یا ببینیم که چکار کردیم به مشکل بر می خوریم . اگه ما کد ها رو از هم جدا کنیم با یه تیر دونشونو زدیم یعنی همون چیزی که شما می خوای و هم خوانا تر شدن و بهتر شدن کار .
این دو موضوع به طور کلی جدا از هم هستند
در شرایطی حرفتون درسته (بستگی به template engine تون داره... و اینکه کد phpتون هیچ خروجی نداشته باشه) ولی به طور کلی عمل جدا کردن html از php عمل درستیه

musiox
پنج شنبه 03 خرداد 1386, 20:11 عصر
بله از هم جدا هستند . من منظورم از جدا کردن کدها صرفا این نیست که کد های html تو یه فایل باشن و کد های php تو یه فایل دیگه که بگیم این دو تا از هم جداشدن . نه ما یک سری اعمال بر روی ورودی های کاربر انجام میدیم و یه سری خروجی به کاربر می دیم . اگه برنامه ما لایه لایه باشه ( منظورم همون کلاس بندی شده است ) و لایه ها با هم کاری نداشته باشن جز اینکه یه لایه خروجی خود رو به صورت قالب مورد انتظار لایه دیگه ، به اون تحویل بده و حالا لایه جدید کارشو شروع کنه و عملیاتی که باید روی داده ها انجام بده ، انجام بده . پس وقتی به لایه نمایش داده ها می رسیم دیگه کاری با عملیات های خاص نداریم بلکه کار ما قالب دادن به داده های دریافتی از لایه بالاتر و قرار دادن اونا تو قالب html ما هستند . من فکر کنم که منظور آقای tabib_m هم همین باشه .

tabib_m
پنج شنبه 03 خرداد 1386, 21:36 عصر
بله از هم جدا هستند . من منظورم از جدا کردن کدها صرفا این نیست که کد های html تو یه فایل باشن و کد های php تو یه فایل دیگه که بگیم این دو تا از هم جداشدن . نه ما یک سری اعمال بر روی ورودی های کاربر انجام میدیم و یه سری خروجی به کاربر می دیم . اگه برنامه ما لایه لایه باشه ( منظورم همون کلاس بندی شده است ) و لایه ها با هم کاری نداشته باشن جز اینکه یه لایه خروجی خود رو به صورت قالب مورد انتظار لایه دیگه ، به اون تحویل بده و حالا لایه جدید کارشو شروع کنه و عملیاتی که باید روی داده ها انجام بده ، انجام بده . پس وقتی به لایه نمایش داده ها می رسیم دیگه کاری با عملیات های خاص نداریم بلکه کار ما قالب دادن به داده های دریافتی از لایه بالاتر و قرار دادن اونا تو قالب html ما هستند . من فکر کنم که منظور آقای tabib_m هم همین باشه .
این چیزی که شما میگی ، کار خوبیه ولی در کل منظورم این نبود؛ و تو همون پست آرمین خان (پست شماره 5) جواب خودم رو گرفتم.

موفق باشید.

Mohammad Minaei
چهارشنبه 09 خرداد 1386, 18:42 عصر
وحشتناکه اگه یه php کار حرفه ای این کد رو بنویسه:

<?
.
.

?>
<hml codes>
<?
.
.
.
?>

سعی کنید از روش های جدید برنامه نویسی استفاده کنید!!

tabib_m
چهارشنبه 09 خرداد 1386, 22:16 عصر
........چرا؟

maleknet
پنج شنبه 10 خرداد 1386, 08:30 صبح
به نظر من بهترین راه همون بافر کردن خروجی است که به راحتی و بدون دردسر می تونی خروجی برنامه رو کنترل کنی منم تو برنامه هام اکثر قسمتها رو از تکنیک بافر کردن و همچنین فشرده کردن استفاده می کنم پیشنهاد این کار رو به دوستان هم می کنم

oxygenws
پنج شنبه 10 خرداد 1386, 09:16 صبح
به نظر من بهترین راه همون بافر کردن خروجی است که به راحتی و بدون دردسر می تونی خروجی برنامه رو کنترل کنی منم تو برنامه هام اکثر قسمتها رو از تکنیک بافر کردن و همچنین فشرده کردن استفاده می کنم پیشنهاد این کار رو به دوستان هم می کنم
زیاد کار درستی نیست... برنامه هاتون سرور رو بدبخت می کنند :)
مصرف مموری برنامه های شما چندین برابر برنامه های من خواهد بود :>

هر امکانی و ابزاری جای خودشو داره، می تونه خیلی مفید باشه و می تونه خیلی خیلی خیلی مضر.