PHP ได้สร้างฟังก์ชันสำหรับตัดช่องว่างของข้อความ String ไว้แล้ว ซึ่งเราสามารถเลือกใช้ได้ว่าเราต้องการตัดช่องว่างทางด้านซ้าย หรือด้านขวา หรือทั้งสองด้านก็ได้ด้วยฟังก์ชัน trim() ltrim() rtrim() ดังนี้
<?php $str = " Hello, World "; $trimmed = trim($str); echo $trimmed . "End string"; $LeftTrim = ltrim($str); echo $LeftTrim . "End string"; $RightTrim = rtrim($str); echo $RightTrim . "End string"; ?>
# ผลลัพธ์ Hello, WorldEnd String Hello, World End String Hello, WorldEnd String
จากตัวอย่างจะเห็นว่าถ้าเราใช้ฟังก์ชัน trim() มันจะทำการตัดช่องว่างทั้งด้านซ้ายและขวาของข้อความที่ส่งไป ถ้าใช้ฟังก์ชัน ltrim() มันจะทำการตัดช่องว่างทางด้านซ้ายเท่านั้น และถ้าใช้ฟังก์ชัน rtrim() มันจะทำการตัดช่องว่างทางด้านขวาเท่านั้น
เราสามารถกำหนดอักขระที่ต้องการให้มันตัดออกได้ โดยกำหนดเป็นพารามิเตอร์ตัวที่สองของฟังก์ชันนั้น ๆ แต่ในกรณีที่เราไม่ได้กำหนดอักขระเองมันจะ default เป็นค่าต่าง ๆ ดังนี้
| Character | ASCII value | ความหมาย |
|---|---|---|
| " " | 0x20 | Space (ช่องว่าง) |
| "\t" | 0x09 | Tab |
| "\n" | 0x0A | Newline (line feed) |
| "\r" | 0x0D | Carriage return |
| "\0" | 0x00 | NUL-byte |
| "\x0B | 0x0B | Vertical tab |
<?php $title = " Progrmming PHP \n"; $str1 = ltrim($title); // $str1 = "Programming PHP \n" $str2 = rtrim($title); // $str2 = " Programming PHP" $str3 = trim($title); // $str3 = "Programming PHP" ?>
ต่อไปผมจะยกตัวอย่างการกำหนดอักขระที่ต้องการตัดออกแทนการ default ของมันเอง โดยในตัวอย่างนี้จะทำการตัดช่องว่างเหมือนใน default ยกเว้นตัด tab ออกเท่านั้น
<?php $record = "\tFred Flintstone 35 Wilma \n"; $record = trim($record, " \r\n\0\x0B"); // $record = "\tFred Flinstone 35 Wilma" ?>
ผู้สนับสนุน