نکاتی برای بهینه سازی کدهای PHP
همچنان که ترافیک یک وب سایت بالا می رود باری که روی سرور آن قرار می گیرد افزایش می یابد و علاوه بر اینکه سبب افزایش هزینه های هاستینگ می شود سرعت لود شدن صفحات هم کمتر می شود و اگر به روش درستی این مشکل حل نشود یک وب سایت پرترافیک به جای سود دهی تبدیل به کاری پر خرج و زیان ده می شود.در این مقاله با نکات و راهکارهای بهینه سازی کدهای PHP آشنا خواهیم شد.(برای آشنایی بیشتر با PHP با دورهی ویدئویی آنلاین و رایگان پی اچ پی استفاده کنید).
1.حذف Else از شرط
به صورت معمول دستور شرطی به شکل زیر نوشته می شوند:
if(condition) { $codefriend = 'My Site'; } else { $google = 'Your Site'; }
خلاصه خط بالا با حذف عبارت else به صورت زیر خواهد بود که شما می توانید در اکثر موارد به همین شکل عمل نمایید.در مواردی که مقداری مشخص دارید می توانید به جای زیاده نویسی و اجرای Else به همین ترتیب عمل کنید.
$codefriend = 'Your Site'; if(condition) { $google = 'My Site&'; }
2.حذف کردن علامت های {اکولاد}
خیلی از دوستان برنامه نویس برای اینکه کدهای زیباتری داشته باشند همیشه دستورات خود را بین {} قرار می دهند و یا حتی اگر با نرم افزار (IDE) کدنویسی میکنید اتوماتیک عبارت های باز و بسته در کد قرار می گیرند که با حذف آنها در خیلی از موارد می توانید کدهای خلاصه تری داشته باشید.
if($site=='codefriend.ir') { echo 'online courses'; }
که می توان به صورت زیر نوشت:در تمامی مواردی که خروجی یا دستور تک خطی می باشد می توانید از همین روش استفاده کنید.
If($site=='codefriend') echo 'online courses';
3.استفاده از اپراتور 3 تایی (Ternary Operators)
زمانی که شرطی به همراه if و else دارید می توانید از اپراتور 3 تایی جهت خلاصه نویسی استفاده نمایید.
if(isset($_POST[ site])) { $site = 'codefriend.ir'; } else { $site = 'google.com'; }
همین کد با استفاده از اپراتور 3 تایی به صورت زیر خواهد بود:
$site = (isset($_POST[site])) ? 'codefriend.ir' : 'google.com';
4.حذف کردن echo
شما می توانید به جای نوشتن دستور echo از حالت <?= ?>استفاده کنید.
<?php echo 'my site'; ?>
و خلاصه آن به صورت زیر خواهد بود:
<?='my site'?>
5.استفاده از علامت @
علامت @ معمولا قبل از عبارت ها قرار می گیرید تا از نمایش خطاها جلوگیری کند. این خطاها معمولا از نوع notice می باشند و مشکلی در روند کلی اجرای سایت نخواهند داشت. استفاده درست از این علامت باعث خلاصه نویسی در کدها می شود. برای مطالعه بیشتر در مورد این اپراتور می توانید به لینک زیر مراجعه نمایید:
php.net/operators.errorcontrol
if(isset($site)) $mysite = $site;
خلاصه به صورت زیر خواهد بود:
$mysite = @$site;
6.استفاده از isset به جای strlen
اگر در قسمتی از کدتون برای محاسبه طول رشته ای ( با مقدار ثابت) از تابع strlen استفاده کردید با تغییر اون به isset افزایش سرعتی با حدود 0.0004 ثانیه ای خواهید داشت.
$username = codefriend; if(strlen($username)>8) echo 'Registered'; else echo 'Error';
همین کد با استفاده از تابع isset به صورت زیر خواهد بود:
$username =codefriend; if(isset($username[8])) echo 'Registered'; else echo 'Error';
7.استفاده از تابع str_replace به جای ereg_replace و preg_replace
زمانی که از عبارت های با قاعده (regular expression) استفاده نمی کنید بهتر است برای جایگزینی رشته ها با هم از تابع str_replace استفاده کنید.
preg_replace('/codefriend.ir/','google.com',$site);
و تغییر آن به صورت زیر خواهد بود:این تابع نیز مانند isset باعث افزایش سرعت در اجرای کد می شود.
str_replace('codefriend.ir','google.com',$site);
1 نظر
شروع خوبی بود این مقاله برای اینکه بیشتر به سایتphp سر بزنم