ترفند های کاربردی زبان برنامه نویسی php

در مقاله نکته ها و ترفند های php با برخی از مهم ترین نکته ها و تجربیات php آشنامیشوید.وقتی صحبت از وب میشود، توسعه دهندگان به دنبال راه هایی برای افزایش کارایی کد های خود میگردند. توسعه وب در php برای آنهایی که تازه شروع به طراحی با این زبان میکنند ساده است. فقط باید به دنبال آموزش ها و تمرین هایی که مخصوص تازه کارهاست بگردند.زبان php جزو محبوب ترین زبان ها برای طراحی وب سایت هاست. بهترین مرجع برای یادگیری این زبان، سایت مرجع آن یعنی php.net است که با مثال ها و ترفند هایی که توسط دیگر برنامه نویس ها منتشر می شود یادگیری را راحت تر میکند. مزیت دیگر این زبان وجود فریم ورک های مختلف مانند laravel و ... و همچنین سیستم های مدیریت محتوا (cms) مختلف می باشد که با این زبان پیاده سازی شده اند.ما در این مطلب قصد داریم به چند تا از ترفند ها و نکته هایی از این زبان برنامه نویسی بپردازیم.استفاده از برنامه نویسی شی گرا (OOP)برنامه نویسی شی گرا (OOP) چیزی است که هر توسعه دهنده PHP باید با آن آشنا باشد. برنامه نویسی شی گرا کمک می کند تا از نوشتن کد تکراری راحت شوید و اجازه می دهد تا کد به صورت کارآمد اجرا شود. علاوه بر این در ساخت برنامه های پیچیده و قابل استفاده مجدد نیز کمک می کند، در غیر این صورت و در روش رویه ای به زمان و تلاش بسیار زیادی نیاز دارید. در اینجا مفاهیم برنامه نویسی شی گرا در PHP آورده شده است:کلاسوراثتاینترفیس یا رابطاشیاءانتزاع با پیشرفت مهارت های خود یاد می گیرید که هم برنامه های شی گرا و هم رویه ای را کدنویسی و تست کنید و آنها را به طور یکپارچه در یک برنامه کامل جمع کنید.لپ کلام ??به طور کلی برنامه نویسی شی گرا تعداد مراحل کدنویسی و اجرای آن را کاهش می دهد. ویژگی گزارش خطا را فعال کنیدقبل از شروع کار بر روی یک پروژه جدید، فعال سازی ویژگی گزارش خطا از اولین کارهایی است که باید انجام دهید. حتی توسعه دهندگان حرفه ای نیز به آن قسم می خورند. این ویژگی باعث می شود که در حین زمان ساخت برنامه و در زمان بروز خطاها به جای صفحه سفید خالی، پیام خطای مفیدی را مشاهده کنید. هنگام اجرای کد به شما کمک می کند تا خطاها را حذف کنید و بازدهی را افزایش می دهد.با قرار دادن این خط کد در فایل php.ini ویژگی گزارش خطا را فعال کنید:diplay_errors = onاستفاده از cURL به جای file_get_contentبیشتر توسعه دهندگان برای اینکه از api یک سایت استفاده کنند یا اینکه فایلی از یک url دریافت کنند از ()file_get_content استفاده میکنند، اما اگر بدانند یک راه خیلی بهتر و قدرتمند تر وجود دارد هرگز از این کد استفاده نمیکنند. دستور curl میتواند جایگزین بسیار خوب و قدرتمندی برای این کد باشد چون با این دستور میتوانید انواع تنظیمات را برای ارسال و دریافت از یک url تنظیم کنید.<?php $handle = curl_init(); $url = &quothttps://www.masalan:).com" // Set the url curl_setopt($handle, CURLOPT_URL, $url); // Set the result output to be a string. curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); $output = curl_exec($handle); curl_close($handle); echo $output; ?>جلوگیری از Sql Injectionتکنیکی است که هکرها از آن استفاده کرده تا از طریق ورودی های صفحه وب دستورات SQL را در عبارات SQL تزریق کنند. دستورات تزریق شده می تواند عبارات SQL را تغییر داده و امنیت web application را به خطر اندازد. راه های زیادی برای جلوگیری از این تکنیک وجود دارد اما ساده ترین روش استفاده از تابع mysql_real_escape_string می باشد.<?php // Connect $link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password') OR die(mysql_error()); // Query $query = sprintf(&quotSELECT * FROM users WHERE user='%s' AND password='%s'&quot, mysql_real_escape_string($user), mysql_real_escape_string($password)); ?> یا بصورت مختصر : $query_result=mysql_query(&quotSELECT * FROM WHERE Ex_table ex_field = \&quot &quot.mysql_real_escape_string($ex_field).&quot\&quot&quot); استفاده از دستور Switch به جای if های فراوانشاید بگویید که کار این دو دستور یکی است و چه لزومی دارد که به جای if ها از دستور Switchاستفاده کنیم؟زمان اجرا کد هایی که با Switchنوشته می شوند به مراتب سریع تر از if است پس در نتیجه هم کارایی و هم سرعت و هم خوانایی کد ها بالا میرود.<?php $favcolor = &quotblue" switch ($favcolor) { case &quotblue&quot: echo &quotYour favorite color is blue!" break; case &quotred&quot: echo &quotYour favorite color is red!" break; case &quotgreen&quot: echo &quotYour favorite color is green!" break; } ?>استفاده از if کوتاه یا Short ifیکی ازبهترین ترفند های php استفاده از if های کوتاه است که جایگزین بسیار خوبی برای if معمولی است. مثال:$age = ( !empty ( $ _ GET [ 'age ] ) ? $ _ GET [ 'age' ] : 58 ) ;رمزگذاری روی پسوردهایکی از مهمترین فیلدها در پایگاه داده یک وبسایت فیلد پسورد می باشد که مربوط به کاربران است. پس باید به دنبال این باشید که این پسوردها را رمزگذاری کنید که اگر هکری به دیتابیس شما وارد شد حداقل میدانید پسورد های کاربران رمزگذاری شده اند. برای این کار میتوانید از دستور زیر استفاده کنید:$enc_pass = password_hash ( $submitted_pass , PASSWORD_DEFAULT ) ;با این کد هم میتوانید بفهمید که آیا پسورد درست است یا خیر:if ( password_verify ( $submitted_pass , $stored_pass ) ){ // User successfully authenticated}جمع بندی : هدف از این مقاله برای اون دسته از عزیزانی بود که تازه کار هستند امیدوارم مفید واقع شده باشه براتون ?https://farshadabolfathi.ir/