ตัวอย่างฟังก์ชันที่เกี่ยวข้องกับการทำงานของสตริงค์

ตัวอย่างฟังก์ชันที่เกี่ยวข้องกับการทำงานของสตริงค์

สองฟังก์ชันแรกที่เราจะทำความรู้จักคือ ฟังก์ชัน strtolower() และ strtoupper() ซึ่งมีหน้าที่คือ เอาไว้แปลงตัวอักขระภาษาอังกฤษให้เป็นตัวพิมพ์เล็ก หรือตัวพิมพ์ใหญ่ทั้งหมด ตามตัวอย่างต่อไปนี้

<?
$answer = “Yes”;
if ($answer == “yes”)
echo “yes…\n”;
else
echo “error!\n”;

$answer = strtolower(“Yes”);
if ($answer == “yes”)
echo “yes…\n”;
else
echo “error!\n”;

$answer = strtoupper(“Yes”);
if ($answer == “YES”)
echo “YES…\n”;
else
echo “error!\n”;
?>

ประโยชน์ของฟังก์ชันทั้งสองที่เห็นได้ชัด คือ เอาไว้ใช้แปลงข้อความให้เป็นตัวพิมพ์ใหญ่หรือเล็กทั้งหมด ก่อนที่เราจะใช้ในการเปรียบเทียบข้อความ เช่น ผู้ใช้อาจจะใส่ข้อความไว้ใน $answer ว่า “Yes” “YeS” “yES” หรือ “YES” เป็นต้น แต่เราอยากรู้ว่า ผู้ใช้ใส่คำว่า yes หรือไม่ โดยไม่สนใจว่าจะเป็น ตัวพิมพ์ใหญ่หรือเล็ก ในกรณีนี้ เราก็แปลงให้เป็นตัวพิมพ์เล็กก่อน แล้วก็นำมาเปรียบเทียบ

สมมุติว่า มีสตริงค์หรือข้อความอยู่แล้วต้องการจะแยกออกเป็นส่วนย่อยๆโดยใช้ตัวอักขระ หรือสตริงค์ที่มีอยู่ข้างในเป็นตัวแยก เราจะใช้ฟังก์ชัน explode() ตามตัวอย่างต่อไปนี้

<?
$str = “ohh:users:bash”;
list($user,$group,$shell) = explode(“:”,$str);
echo “$user $group $shell”;
?>

จากตัวอย่างข้างบนเราใช้ “:” เป็นตัวแยกส่วนของข้อความว่า “ohh:users:/bash” และค่าที่ได้จากฟังก์ชัน explode() จะเป็น array ดังนั้น เราก็สามารถใช้ฟังก์ชัน list() เก็บส่วนของข้อความที่ถูกแยกแล้วได้
ในกรณีนี้มีสามส่วนและถูกแยกเก็บไว้ในตัวแปร $user $group และ $shell ตามลำดับ

ฟังก์ชันที่ทำงานตรงกันข้ามกับฟังก์ชัน explode() คือฟังก์ชัน join ตัวอย่างการใช้งานมีดังนี้

<?
unset($a);
$a[]=”aaa”;
$a[]=”bbb”;
$a[]=”ccc”;
echo join(“:”,$a).”<BR>\n”;
?>