PHP: PHP Hypertext Preprocessor

Home

PHP Tutorial
Knowledge Developer Database Internet Resource
ข้อความ และนิพจน์ปกติี่
1. ชุดตัวอักษรและ Unicode
2. การจัดรูปแบบข้อความ
3. การทำงานกับข้อความ
4. นิพจน์ปกติ
5. การทำงานกับข้อความ ด้วยนิพจน์ปกติ
 
PHP เบื้องต้น
1. เริ่มต้นด้วย PHP
2. ภาษา PHP
3. การทำงานไฟล์ และไดเรคทอรี
4. การทำงานกับ Array
5. การควบคุมข้อความ และนิพจน์ปกติี่
6. คำสั่งใช้ใหม่และฟังก์ชัน
7. Object Oriented Programming
 
PHP
PHP เบื้องต้น
การสร้างโปรแกรมประยุกต์เว็บ
PHP ระดับสูง
 
Internet
PHP
SSI
HTML
AJAX
 
PHP เบื้องต้น > การควบคุมข้อความและนิพจน์ปกติี่

การจัดรูปแบบข้อความ

ตามปกติต้องมีการปรับข้อความของผู้ใช้เล็กน้อย (จาก ฟอร์ม HTML) ก่อนการใช้

การตัดข้อความ

ขั้นตอนแรกในการปรับคือการตัด whitespace ส่วนเกินจากข้อความ ถึงแม้ว่าสิ่งนี้ไม่สำคัญแต่มีประโยชน์ถ้ากำลังเก็บข้อมูลในไฟล์หรือฐานข้อมูล หรือเปรียบเทียบข้อความ
PHP มี 3 ฟังก์ชันสำหรับวัตถุประสงค์นี้ ฟังก์ชัน trim () ใช้ปรับปรุงข้อมูลนำเข้าดังนี้
$name = trim($name);

ฟังก์ชัน trim () ตัด whitespace จากเริ่มต้นและท้ายข้อความ จากนั้นส่งออกข้อความผลลัพธ์ ตัวอักษรที่ถูกตัดคือ บรรทัดใหม่ (\n) และช่องว่าง

ฟังก์ชัน ltrim () กำจัด whitespace เฉพาะจากเริ่มต้นข้อความ ฟังก์ชัน chop() กำจัด whitespace จากท้ายข้อความ

การจัดรูปแบบข้อความสำหรับการนำเสนอ

PHP มีชุดฟังก์ชันที่สามารถจัดรูปแบบข้อความในวิธีต่างกัน

การใช้รูปแบบ HTML

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

จัดรูปแบบข้อความสำหรับการพิมพ

นอกจากการใช้ echo ในการพิมพ์ข้อความไปยัง browser แล้ว PHP ยังสนับสนุนฟังก์ชัน print () ซึ่งทำงานเหมือนกับ echo แต่เป็นฟังก์ชันที่ส่งออกค่า (0 หรือ 1)

ในการจัดรูปแบบซับซ้อนสามารถใช้ 2 เทคนิคคือ ฟังก์ชัน printf () และ sprintf () ฟังก์ชันนี้ทำงานลักษณะเดียวกัน ยกเว้น printf () พิมพ์ข้อความจัดรูปแบบไปยัง browser และ sprintf () ส่งออกข้อความจัดรูปแบบ

ไวยากรณ์ของฟังก์ชัน คือ
string    sprintf (string format [,mixed args...])
int         printf (string format [,mixed args...])

พารามิเตอร์แรกที่ส่งผ่านทั้ง 2 ฟังก์ชัน คือข้อความจัดรูปแบบที่อธิบายลักษณะพื้นฐานของผลลัพธ์ด้วยรหัสรูปแบบแทนที่ตัวแปร พารามิเตอร์อื่นเป็นตัวแปรที่จะแทนที่ในข้อความจัดรูปแบบ

ตัวอย่าง การใช้ echo พิมพ์ตัวแปรที่ต้องการ
echo "จำนวนรวมของใบสั่งซื้อคือ $amount";

printf () ใช้ดังนี้
printf ("จำนวนรวมของใบสั่งซื้อคือ %s", $amount);

%s ในข้อความจัดรูปแบบคือการเรียกข้อกำหนดการแปลง รหัสหมายถึง "แทนที่ด้วยข้อความ" ในกรณีนี้ถูกแทนที่ด้วย $amount ที่แปลเป็นข้อความ

ถ้าค่าเก็บใน $total คือ 12.4 ทั้ง 2 คำสั่งจะพิมพ์เป็น 12.4

ข้อได้เปรียบของ printf () คือ สามารถใช้ข้อกำหนดการแปลงอื่น เพื่อระบุ $amount คือ เลขทศนิยม และควรมีทศนิยม 2 ตำแหน่ง หลังจุดทศนิยม
printf ("จำนวนรวมของใบสั่งซื้อคือ %.2f ",$amount);

ในข้อความจัดรูปแบบมีได้หลายข้อกำหนดการแปลง ถ้ามี n ข้อกำหนดการแปลง ควรมี n อากิวเมนต์หลังจากข้อความรูปแบบ แต่ละข้อกำหนดการแปลงได้รับการแทนที่ โดยอากิวเมนต์จัดรูปแบบตามลำดับในรายการ
printf ("จำนวนรวมของใบสั่งซื้อคือ %.2f (ค่าจัดส่ง %.2f ) ", $freight);

ข้อกำหนดการแปลงแรกใช้ตัวแปร $amount และที่ 2 ใช้ตัวแปร $freight
%[‘padding_chaeacter‘] [-] [width] [.precision]type

แต่ละข้อกำหนดการแปลงมีรูปแบบเหมือนกันคือ
padding_chaeacter เป็นตัวเลือกใช้รองรับตัวแปรกับความกว้างที่ระบุ ตามตัวอย่างใช้เพิ่มศูนย์นำหน้าตัวเลข เหมือนตัวนับ
สัญลักษณ์ – เป็นตัวเลือกระบุว่าข้อมูลในฟิลด์ชิดซ้ายแทนที่ชิดของตามค่าเริ่มต้น
width บอก printf () รู้ถึงที่ว่าง ( เป็นตัวอักษร) ให้เหลือไว้กับตัวแปรที่ถูกแทนที่
precision ต้องเริ่มต้นด้วยจุดทศนิยม และเก็บตัวเลขตำแหน่งหลังจุดทศนิยมที่ต้องการแสดง
type คือ รหัสประเภท ตามการสรุปในตาราง 1.5.1

ตาราง 1.5.1 รหัสประเภทข้อกำหนดการแปลง

ประเภท ความหมาย

b

แปลเป็นจำนวนเต็ม และพิมพ์เป็นเลขฐาน 2

c

แปลเป็นจำนวนเต็ม และพิมพ์เป็นตัวอักษร

d

แปลเป็นจำนวนเต็ม และพิมพ์เป็นเลขฐาน 10

f

แปลเป็น double และพิมพ์เป็นจุดทศนิยม

o

แปลเป็นจำนวนเต็ม และพิมพ์เป็นเลขฐาน 8

s

แปลเป็นข้อความและพิมพ์เป็นข้อความ

x

แปลเป็นจำนวนเต็ม และพิมพ์เป็นเลขฐาน 16 ด้วยตัวพิมพ์เล็ก สำหรับเลข a-f

X

แปลเป็นจำนวนเต็ม และพิมพ์เป็นเลขฐาน 16 ด้วยตัวพิมพ์ใหญ่ สำหรับเลข A-F

การเปลี่ยนตัวพิมพ์ของข้อความ

ตัวพิมพ์ของข้อความสามารถจัดรูปแบบใหม่ด้วยฟังก์ชันเปลี่ยนตัวพิมพ์ ผลของฟังก์ชันเหล่านี้สรุปอยู่ในตาราง 1.5.2

ตาราง 1.5.2 ฟังก์ชันตัวพิมพ์และผลลัพธ์

ฟังก์ชัน คำอธิบาย การใช้
$subject

ผลลัพธ์
Feedback from wed site

strtoupper (mb_strtoupper)

เปลี่ยนข้อความเป็นตัวพิมพ์ใหญ่

strtoupper($subject)

HELLO WORLD AND EVERYBODY

strtolower (mb_strtolower)

เปลี่ยนข้อความเป็นตัวพิมพ์เล็ก

strtolower ($subject)

hello world and everybody

ucfirst ()

เปลี่ยนตัวอักษรแรกของข้อความเป็นตัวพิมพ์ใหญ่

ucfirst ($subject)

Hello world and everybody

การจัดรูปแบบสำหรับการจัดเก็บในฐานข้อมูล

ฟังก์ชันข้อความ adddslashes () และ stripslashes () สามารถใช้จัดรูปแบบข้อความใหม่สำหรับการจัดเก็บในฐานข้อมูล

ตัวอักษรบางประเภท เช่น เครื่องหมายคำพูด ( ' และ " ), backslash (\) และตัวอักษร NULL มีปัญหากับการแปลความหมายของฐานข้อมูลเพื่อการจัดเก็บเข้าสู่ฐานข้อมูล ดังนั้นจึงจำเป็นต้องหาวิธีการระบุ หรือ escape ตัวอักษรเหล่านี้เพื่อให้ฐานข้อมูล เช่น MySql สามารถเข้าใจความหมายตัวอักษรพิเศษ แล้วทำ escape ตัวอักษรเหล่านี้โดยให้เพิ่ม backslash ข้างหน้า เช่น "(double quote) จะเป็น \" และ \ (backslash) จะเป็น \\ (กฎที่ประยุกต์แบบทั่วไปกับอักษรพิเศษ ถ้ามี \\ ในข้อความต้องแทนที่ด้วย \\\\)

PHP มี 2 วิธีฟังก์ชันพิเศษที่ออกแบบสำหรับการออกแบบตัวอักษร ก่อนการเขียนข้อความเข้าสู่ฐานข้อมูล ควรจัดรูปแบบด้วย addslashes ()
$stringvar = addslashes ($stringvar);

addslashes นำข้อความเป็นพารามิเตอร์และส่งออกข้อความจัดรูปแบบใหม่

เมื่อใช้ addslashes () แล้ว ข้อความได้รับการเก็บในฐานข้อมูลด้วย slash ในข้อความนั้น เมื่อดึงข้อความออกมาต้องตัด slash ออกด้วยฟังก์ชัน stripslashes ()
$stringvar = stripslashes ($stringvar);


  

สงวนลิขสิทธิ์ (C) widebase / Julaphak