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

- عبارات و مقدار هایی که بین دابل کوتیشن قرار می گیرند به هنگام اجرای برنامه بر روی آنها پردازش انجام می شود ، بنابراین بهتر است مقدار هایی که فقط شامل متن هستند رو بین سینگل کوتیشن قرار دهیم مخصوصا در مواردی که رشته مورد نظرمون طولانی هست.
پس به جای استفاده از حالت زیر

$msg="please enter all fields";

بهتره که به شکل زیر عمل کنید

$msg='please enter all fileds';

- اگر بخواهیم مقادیر موجود در یک آرایه رو داخل دیتابیس وارد کنیم به جای استفاده از روش زیر

$arr=array('ali','mohammad','pouya');
foreach($arr as $val)
mysql_query("insert into my_tbl values('$val')");


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

$arr=array('ali','mohammad','pouya');
$values=array();
foraech($arr as $val)
$values[]='("'.$val.'")';
$query='insert into my_tbl values'.implode(',' ,$values);
mysql_query($query);

اگر از حالت اول استفاده کنید با هر بار چرخش حلقه یک کوئری اجرا میشه و مقدار مورد نظر از آرایه به جدولمون وارد میشه اما در روش دوم دستور اس کیو ال مون رو به صورت پویا می نویسم و تنها با اجرای یک کوئری مقادیر مورد نظرمون رو وارد جدول می کنیم که باعث میشه تا سرعت برنامه بالا بره .

- مقادیری که از کاربر دریافت می کنید رو بی دلیل در متغیر اضافی قرار ندید یا آن را در داخل چند متغیر کپی نکنید تا حافظه کمتری مورد استفاده قرار بگیرد و برنامه با سرعت بیش تری اجرا شود .
بنابراین به جای استفاده از روش زیر

$a=htmlspecialchars($_GET['name']);
echo 'your name is'.$a;

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

echo 'your name is'.htmlspecialchars($_GET['name']);

تا كنون ۶ نظر برای اين پست ثبت شده است


  1. سید امیر گقته :

    در مورد وارد کردن کوئری آیا اگر جدول دیتابیس چند فیلد داشته باشه باز هم با قرار دادن ‘,’ بین مقادیر به درستی وارد میشوند؟

    پست خوبی بود. نکاتی که در سرعت و فضا بسیار اهمیت دارند.

    متشکر

    ۲۲ تیر ۱۳۸۸ در ۷:۰۴ ق.ظ

  2. پیام گقته :

    در صورتی که جدول شما چند فیلد هم داشته باشه می تونید اونها رو با , از هم جدا کنید و هر رکورد رو داخل پرانتز قرار بدید و پرانتزها رو با , از هم جدا کنید.
    insert into table values (‘field1′,’field2′),(‘field1′,’field2′); be hamin shekl mitonid edame bedid

    ۲۲ تیر ۱۳۸۸ در ۴:۰۵ ب.ظ

  3. ثانیه گقته :

    استفاده ای نکردیم – آخه به دردم نمی خورد

    اما از زحمات شما و محتوای مفیدتان تشکر می کنم

    ۲۶ تیر ۱۳۸۸ در ۴:۴۷ ق.ظ

  4. محمدرضا گقته :

    سلام
    سایتتون خیلی عالیه

    موفق باشید

    ۲۰ دی ۱۳۸۸ در ۹:۵۰ ب.ظ

  5. وحید گقته :

    سلام. خسته نباشید. در مورد این پست
    http://webnevis.net/1388/04/21/few-tips-in-php-programing/
    من نفهمیدم این دو تا چه جوری معادلند.
    آخه خروجی دومی می شه این
    “insert into my_tbl values(“ali”),(“mohammad”),(“pouya”)”

    ممنون.

    ۲۹ فروردین ۱۳۸۹ در ۸:۰۲ ب.ظ

  6. پیام گقته :

    خوب خروجی باید همین بشه دیگه ، این حالت از دستور insert برای وارد کردن چند مقدار با یک کوئری هست .

    ۲۹ فروردین ۱۳۸۹ در ۱۱:۳۸ ب.ظ