در صورتی که می خواهید سرعت سایت خود را بالا ببرید و همچنین میزان بار استفاده شده بر روی سرور را کمک نمایید می توانید از php برای کش کردن صفحات سایت کمک بگیرید. کش کردن به آن معنی است که یک نسخه از صفحه مورد نظر بر روی سرور ذخیره می گردد و در درخواست کاربر بعدی به جای اجرا شدن صفحه مورد نظر فایل کش ذخیره شدن در سایت به کاربر نمایش داده می شود. شما همچنین می توانید در برنامه نویسی کش سایت خود زمان مشخص نمایید به عنوان مثال مشخص نمایید هر 15 کش جدید در سایت نوشته شود. مدت زمان کشی که تعیین می نمایید بسته به وضعیت سایت شما می باشد. در صورتی که سایت شما دائما در حال تغییر است کش را باید بسیار کم و در حد 1 دقیقه ست نمایید و در صورتی که سایت شما تغییرات خاصی ندارد می توانید کش حتی 1 ماهه ست نمایید. استفاده از سیستم کش باعث می شود بار بر روی به میزان قابل توجهی کاهش یابد زیرا دیگر لازم نیست برنامه php اجرا گردد و صفحه برای کاربر ارسال گردد. صفحه مورد نظر به مانند یک صفحه html لود می گردد.
برای ایجاد سیستم کش در فایل php خود کافی است کد زیر نظر را در بالای فایل php خود کپی نمایید:
$cachetime = 15 * 60; // 5 minutes
// Serve from the cache if it is younger than $cachetime
if (file_exists($cachefile) && (time() - $cachetime
< filemtime($cachefile)))
{
include($cachefile);
echo "<!-- Cached ".date('jS F Y H:i', filemtime($cachefile))."
-->n";
exit;
}
ob_start(); // start the output buffer
?>
کد php بالا ابتدا به دنبال فایل کش بر روی سرور می گردد و در صورتی که زمان ایجاد آن مربوط به کمتر از 15 دقیقه بود فایل کش شده رو به جای اجرا کردن کد برای کاربر ارسال می نمایید
و دستور php زیر را در پایین صفحه کپی نمایید
// save the contents of output buffer to the file
fwrite($fp, ob_get_contents());
// close the file
fclose($fp);
// Send the output to the browser
ob_end_flush();
?>
کد بالا پس از اجرا شدن اسکریپت صفحه مورد نظر خروجی را می گیرد و در فایل کش ذخیره می نماید
همانطوری که ملاحظه می فرمایید ایجاد سیستم کش از طریق برنامه نویسی php بسیار ساده است ولی به مقدار قابل توجهی در بار روی سرور تاثیر مثبت می گذارد.
منبع:
ابزارهای بسیاری برای کد نویسی PHP وجود دارند که با استفاده از آنها می توانید راحت تر برنامه نویسی نمایید. در زیر چند مورد را که مورد استفاده دارکوب نیز می باشد به شما نمایش داده ام.
Aptana PHP ویرایشگر متن باز PHP می باشد که در کنار Aptana Studio مورد استفاده قرار می گیرد. برای اطلاعات بیشتر به online documentation about Aptana PHP مراجعه نمایید.
PHPUnit ابزار کامل JUnit جهت تست و بررسی PHP 5 می باشد. ابزاری جهت تست برنامه های نوشته شده توسط PHP شما می باشد. تست کردن برنامه توسط فریم ورک PHPUnit بسیار ساده می باشد; برای نحوه استفاده به نحوه استفاده مراجعه نمایید.
Securimage ابزاری رایگان, جهت ساخت تصاویر با کدهای رندم CAPTCHA جهت امن سازی فرم های وب سایت می باشد.
ابزاری برای ویرایش کدهای PHP که توسط برنامه نویسان مورد استفاده قرار می گیرد، Sublime Text دارای امکانات جانبی بسیاری در باکس کناری آن می باشد. می توانید چندین ستون/ ردیف/ پنجره در هر پروژه باز نمایید ، موس را در چندین جای مختلف قرار دهید، کلیدهای میانبر برای آیتم های مختلف تعریف نمایید و سایر موارد. ویژگی مورد علاقه من مدیریت بسته ها می باشد ، که با برنامه نویس امکان نصب پلاگین های مختلف را می دهد تا از تابع های مختلفی استفاده نماید.
بسته های مختلف از بابت معرفی (سایر موارد را می توانید در این آدرس بیابید https://sublime.wbond.net/):
در صورتی که قصد استفاده از کتابخانه های محبوب PHP را دارید می توانید از این ابزار استفاده نمایید. به راحتی می توانید فایلcomposer.json در ریشه اصلی پروژه خود ایجاد نموده, و یک دستور را اجرا نمایید, و کلیه ارتباط ها بارگذاری می گردند و آماده استفاده می باشند. کتابخانه های بسیار در https://packagist.org
ابزاری جهت استفاده در پروژه های تیمی. در صورتی که چندین نفر بر روی یک فایل کار می نمایند و نیاز به بازگردانی به نسخه های قبلی باشد استفاده از این ابزار بسیار مناسب خواهد بود. به شما پیشنهاد می نمایم در مورد نحوه استفاده و امکانات به Git مراجعه نمایید.
https://github.com/maximebf/php-debugbar
ارسال اطلاعات رفع عیب و صفحه کنسول مرورگر. خروجی var_dump()ing برای شما ارسال خواهد شد, Jpop. این ابزار شبیه به FirePHP می باشد اما استفاده از آن بسیار ساده تر می باشد. این ابزار شبیه به Monolog می باشد, که اطلاعات رفع عیب PHP را به صورت پیچیده تر به خروجی ارسال می نماید.
https://github.com/fzaninotto/Faker
کتابخانه بسیار جالبی از اطلاعات پیش فرض که می توانید از آن استفاده نمایید — نام, آدرس و سایر موارد.
https://github.com/geocoder-php/Geocoder
ابزاری بسیار مناسب برای به کار گیری توابع مربوط به مکان که به مانند Google, Bing و MapQuest کار می نماید.
Directus فریم ورک مدیریت محتوا نوشته شده بر پایه PHP می باشد که به شما امکان تغییر نحوه دریافت، پردازش و نمایش محتوا را می دهد. ;کافی است دستورهای SQL خود را بنویسید تا Directus سایر کارها را برای شما انجام دهد. در حقیقت می توانید از آن به عنوان یک سیستم مدیریت محتوا استفاده نمایید.
لینک: