วันพฤหัสบดีที่ 27 พฤศจิกายน พ.ศ. 2557

ฟังก์ชันที่มีประโยชน์

ฟังก์ชันที่มีประโยชน์

PHP มีฟังก์ชันภายในที่ทำงานกับข้อความและการแสดงผล ในเบื้องต้นจะแนะนำบางฟังก์ชันที่มีประโยชน์

nl2br

ถ้าสังเกตให้ดีจะพบว่าข้อความที่มีการเว้นบรรทัดนั้น เมื่อแสดงผลด้วย HTML จะไม่ขึ้นบรรทัดใหม่ใน browser ของผู้ใช้ เนื่องจากการตัด whitespace ดังนั้นการแสดงผลให้เว้นบรรทัด ให้เรียกฟังก์ชัน nl2br() ที่จะแปลงตัวอักษรบรรทัดใหม่ให้เป็น </br> tag ตามสคริปต์นี้

<?php

$stringval =<<<NLSTRING

นี่เป็นตัวอย่างข้อความที่
ประกอบด้วยการขึ้นบรรทัดใหม่
และต้องการดูผลลัพธ์
ให้เหมือนกับข้อความต้นทางนี้

NLSTRING;
                  echo nl2br($stringval);
?>
ผลลัพธ์คือ
นี่เป็นตัวอย่างข้อความที่
ประกอบด้วยการขึ้นบรรทัดใหม่
และต้องการดูผลลัพธ์
ให้เหมือนกับข้อความต้นทางนี้

var_dump

มีบ่อยครั้งที่อาจจะมีการทดลองหรือเขียนโปรแกรม และมีความต้องการดูเนื้อหา รวมทั้งธรรมชาติแบบไดนามิคส์และไม่มีการประกาศประเภทข้อมูลให้ตัวแปรอย่างชัดเจน หมายความว่าจะไม่ทราบประเภทข้อมูลปัจจุบันที่แน่นอน ฟังก์ชัน var_dump แสดงประเภทและค่าของตัวแปรในผลลัพธ์ สำหรับข้อความ var_dump ให้จำนวนตัวอักษรในข้อความ

<?php

$floatval = 123e-456;
$intvar = 123456;
$stringval = "Hello world";

var_dump($floatval);      echo "<br/>\n";
var_dump($intvar);        echo "<br/>\n";
var_dump($stringval);    echo "<br/>\n";
?>
ผลลัพธ์จากคำสั่งข้างบนคือ
float(0)
int(123456)
string(10) “Hello world”

print_r

ฟังก์ชัน print_r คล้ายกับ var_dump แต่สร้างผลลัพธ์ที่อ่านได้ง่าย print_r  ให้มีการเพิ่มค่าตัวเลือก(เรียกว่า พารามิเตอร์) ที่บอกให้ฟังก์ชันนี้ส่งออกผลลัพธ์เป็นข้อความแทนที่การส่งผลลัพธ์ออกไป

<?php

$stringval = "เรายินดีให้บริการสินค้าหัตถกรรมฝีมือปราณีต";

print_r ($stringval);    echo "<br/>\n";
$result = print_r ($stringval, TRUE);
echo $result;

?>
ผลลัพธ์จากคำสั่งข้างบนคือ
เรายินดีให้บริการสินค้าหัตถกรรมฝีมือปราณีต
เรายินดีให้บริการสินค้าหัตถกรรมฝีมือปราณีต

var_export

ฟังก์ชันแสดงผลสุดท้ายคือ ฟังก์ชัน var_export ที่คล้ายกับ var_dump มาก ยกเว้นผลลัพธ์ได้รับการนำเสนอค่าของข้อมูลแบบคำสั่ง PHP               

<?php

$arr = array(1, 2, 3, 4);
var_export($arr);

?>
ผลลัพธ์จากคำสั่งข้างบนคือ
array( 0 => 1, 1 => 2, 2 => 3, 3 => 4)

Quoted

ในการเขียนคำสั่งข้อความโดยเฉพาะคำสั่ง echo การใช้ quoted จะสร้างความสับสนให้กับตัวกระจาย PHP ได้ เช่น
echo "<td width="15%">";
คำสั่งนี้สร้างความผิดพลาด ดังนั้นต้องใช้ quoted ต่างกัน
echo "<td width='15%'>";
หรือ
echo '<td width="15%">';
ในการเขียนประโยคคำสั่งคิวรี่ การใช้ quoted ภายในประโยคคำสั่งจะทำตัวกระจาย MySQL เกิดความสับสน
INSERT INTO message VALUES("การสัมนาเรื่อง "การดูแลสุขภาพ" เริ่มเวลา 16.00 ");
การคำสั่งต้องใช้ slash (\) กับ quoted ที่ไม่ใช้ส่วนการห้อหุ้ม
INSERT INTO message VALUES("การสัมนาเรื่อง \"การดูแลสุขภาพ\" เริ่มเวลา 16.00 ");

ไม่มีความคิดเห็น:

แสดงความคิดเห็น