PHP tips for better life
posted on 26 Nov 2008 17:31 by ilumin in usefulหัดใช้ ++, --
$val = $val + 1;
$val = $val - 1;
ให้ผลลัพท์เดียวกับ (ไม่รู้ว่าช้ากว่าหรือเปล่า แต่ที่สำคัญคือ อันล่างมันงามกว่า)
$val++;
$val--;
-----------------------------------------------------------------------
Single Quotes เร็วกว่า Double Quotes
$mytext = "Dental Plan";
if ($mytext == "Dental Plan") {
echo "Lisa needs braces"; }
สคริ๊ปด้านบนจะทำงานได้ช้ากว่า (อันนี้มีคนลองแล้วช้ากว่าจริงๆ)
$mytext = 'Dental Plan';
if ($mytext == 'Dental Plan') {
echo 'Lisa needs braces'; }
แต่ก็ต้องระวังเพราะว่าใน single quotes จะมีอ่านตัวแปร ดังตัวอย่างด้านล่าง
echo '$mytext, Lisa needs braces.';
// Will output: $mytext, Lisa needs braces.
echo "$mytext, Lisa needs braces.";
// Will output: Dental Plan, Lisa needs braces.
-----------------------------------------------------------------------
อย่าใช้ {} เปลือง
if ($gollum == 'halfling') {
$height --;
}
ให้ผลลัพท์เท่ากับ
เทคนิคนี้เคยใช้บ่อยๆในการเขียน java เพราะสังเกตุว่า javascript ส่วนมากเค้าไม่ค่อยใช้ปีกกาถ้าไม่จำเป็นจริงๆ
เลย assume ว่ามันต้องมีผลกับความเร็วชัวร์
แต่ว่าต้องเว้นบรรทัดให้ดูสวยงามด้วย เด๋วจะงงกับ code ของตัวเอง
if ($gollum == 'halfling') $height --;
-----------------------------------------------------------------------
อย่าใช้ true/false เปลือง
if ($blackbeard == true) echo 'Arr, this chair be high, says I.';
elseif ($seacaptain == false) echo 'Yar, I'm not attractive.';
ให้ผลลัพท์เท่ากับ
คือตัวแปรมันจะเป็น false ได้ก็ต่อเมือมันมีค่าเท่ากับ 0 หรือไม่ได้ถูกกำหนดค่ามา
if ($blackbeard) echo 'Arr, this chair be high, says I.';
elseif (!$seacaptain) echo 'Yar, I'm not attractive.';
-----------------------------------------------------------------------
พอกันที do, while, for
การใช้งาน do, while, for จำเป็นต้องมีการนับจำนวน loop ครับ
จุดนั้นทำให้เสียเวลา และทำให้ code มันไม่สวยด้วย
ใช้ foreach ดีกว่า
foreach ($_GET as $key => $value)
$$key = $value;
ส่วนพวก do, while, for เขียนยังงัยเนี่ย ลืมไปแล้ว - -*
-----------------------------------------------------------------------
Quick if else
if( $color == 'green' ) {
echo 'Green';
} else {
echo 'Not Green';
}
มีค่าเท่ากับ
echo ( $color == 'green' ) ? 'Green' : 'Not Green';
-----------------------------------------------------------------------
เขียน if statement ให้ดูง่ายๆ (แต่แปลกตา)
if("foo" == $myString){
echo $myString . " is my string\n";
} else {
echo $myString . " is not my string\n";
}
ซึ่งปกติเราจะเขียนเป็น $myString == "foo"
เค้าบอกว่าอย่างนี้มันตรวจ error ได้ยากกว่า
เคยเจอครั้งแรกใน wordpress's code ดูแล้วก็งงพักนึงว่าทำไมมันต้องเขียนแบบนี้
-----------------------------------------------------------------------
Multi-line assignment
$paragraph = 'This is a multi-line assignment.';
$paragraph.= 'Newlines are preserved, and';
$paragraph.= '$vars are interpolated.';
มีค่าเท่ากับ
$paragraph = <<<PARA
This is a multi-line assignment.
Newlines are preserved, and
$vars are interpolated.
PARA;
เอามาเรียบเรียงไว้
ใครมี tips อื่นๆอีกก็ช่วยต่อด้วยนะครับ