PDA

View Full Version : سوال: بررسی کد



soroush.r70
شنبه 27 اسفند 1390, 17:33 عصر
عزیزان من از سورس های زیر در ابتدای کدام استفاده می کنم که برای بافر و زمان اجرا هست مشکل داره یا نه
لطفا اشکالات رو بگین که فایده ای داره


ob_start(null, 4096);
ini_set('max_execution_time', 600);
flush();

MMSHFE
شنبه 27 اسفند 1390, 19:01 عصر
کدها که مشکل خاصی ندارن فقط سؤالم اینه که 4 کیلوبایت محدودیت برای بافر ضروری هست؟ چرا بدون محدودیت ازش استفاده نمیکنید؟ ضمناً 10 دقیقه زمان اجرای اسکریپت بنظر زیاد نیست؟

soroush.r70
سه شنبه 01 فروردین 1391, 21:01 عصر
نظر شما چیه به چه صورت استفاده بشه خوبه

soroush.r70
چهارشنبه 02 فروردین 1391, 13:46 عصر
نظری ندارین

majid.ebrahimi
چهارشنبه 02 فروردین 1391, 13:53 عصر
کدها که مشکل خاصی ندارن فقط سؤالم اینه که 4 کیلوبایت محدودیت برای بافر ضروری هست؟ چرا بدون محدودیت ازش استفاده نمیکنید؟ ضمناً 10 دقیقه زمان اجرای اسکریپت بنظر زیاد نیست؟
بافر چی هست حالا؟ اگه تاپیکی با این موضوع قبلا نوشته شده لینکش لطفا بدید ممنون

MMSHFE
چهارشنبه 02 فروردین 1391, 14:30 عصر
بافر یک حافظه هست که از اون برای نگهداری اطلاعات بصورت موقت استفاده میشه. کاربردش در PHP برای نگهداری اطلاعات قبل از اسال اون برای مرورگر هست. برخی از توابع مثل header و... که نیاز به تغییر اطلاعات هدر پاسخها و درخواستهای HTTP دارن، درصورتی که اطلاعات برای کاربر ارسال شده باشه، نمیتونن کار خودشون رو انجام بدن. برای همین، در ابتدای اسکریپت با ob_start بافر خروجی رو فعال میکنیم تا خروجی تولید شده، بجای اینکه برای مرورگر ارسال بشه، توی بافر قرار بگیره و درنتیجه توابع مذکور بتونن به درستی کارشون رو انجام بدن. در انتهای اسکریپت هم با ob_end_flush محتویات بافر رو بطور یکجا برای مرورگر میفرستیم. موفق باشید.

soroush.r70
چهارشنبه 02 فروردین 1391, 16:24 عصر
آقا این چیزهایی که من در بالا نوشتم باید بعد فعال کردن باید غیرفعال بشن حالا تاثیری داره کد بالا رو من به چه صورت بزارم مفیدتره چه چیزهایی اضافیه و چه چیزهایی باید قرار بگیره در این سه خط کد

ob_start(null, 4096);
ini_set('max_execution_time', 600);
flush();

MMSHFE
چهارشنبه 02 فروردین 1391, 17:37 عصر
به نظر من اگه اینطوری کار کنید بهتره:


ob_start();
flush();
ob_clean();
// Codes
ob_end_flush();

ob_clean باعث میشه اگه از قبل چیزی توی بافر باشه، پاک بشه. حالا اگه لازم بود زمان اجرای اسکریپت رو اضافه کنید هم میتونید دستور مربوطه رو همون ابتدا بگذارین. موفق باشید.