สำหรับใครที่กำลังศึกษา
php อยู่ล่ะก็คงจะเคยเห็นคำสั่งไหนซ่ักคำสั่งกันมาบ้างแล้วเพราะว่าเป็นคำสั่งที่น่าจะถูกเอามาเรียกใช่ในงานไหนซักงานนหนึ่งนี่แหละวันนี้เราก็จะมาอธบายการว่าคำสั่ง addslashes(), stripslashes(), htmlspecialchars() และ htmlspecialchars_decode() ต่างกันอย่างไร ลองไปดูกันเลย
addslashes() ใช้สำหรับเพิ่มตัวเครื่องหมาย backslashes (\) ขึ้นมาก่อนที่จะมีเครื่องหมายพิเศษต่าง ๆ เช่น (') single quote หรือ (") double quote
stripslashes() ก็จะทำงานตรงกันข้ามกับ addslashes() นั้นก็คือ มีไว้สำหรับตัดตัว backslashes (\) ออกไปจากข้อความของเรา
htmlspecialchars() เป็นฟังก์ชั่นที่ใช้สำหรับแปลงโค้ด html ที่ผู้ใช้ป้อนเข้ามาให็เป็น String ทั้งหมด
htmlspecialchars_decode() ก็จะทำงานตรงกันข้ามกับ htmlspecialchars() คือการแปลงจากโค้ด HTML กลับมาเป็นให้ออกมาเป็นคำสั่ง HTML
ตัวอย่าง
Code: Select all
<?php
$str="I'm ok";
echo "คำสั่ง addslashes()<br>";
echo "ค่าปกติ"." ".":"." ".$str."<br>";
echo "เมื่อใช้คำสั่ง addslashes()"." ".":"." ".addslashes($str)."<br><br>";
echo "คำสั่ง stripslashes()<br>";
echo "ค่าปกติ"." ".":"." ".$str."<br>";
echo "เมื่อใช้คำสั่ง stripslashes()"." ".":"." ".stripslashes($str)."<br><br>";
?>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<?php $str2="<a href='https://www.youtube.com/watch?v=1k9uvhTw9Fc'>'ชาไข่มุก</a>";?>
</head>
<body>
<?php echo "คำสั่ง htmlspecialchars()<br>"; ?>
<?php echo "ค่าปกติ"." ".":"." ".$str2."<br>"; ?>
<?php echo "เมื่อใช้คำสั่ง htmlspecialchars"." ".":"." ".htmlspecialchars($str2)."<br><br>"; ?>
<?php echo "คำสั่ง htmlspecialchars_decode()<br>"; ?>
<?php echo "ค่าจาก htmlspecialchars()"." ".":"." ".htmlspecialchars($str2)."<br>"; ?>
<?php echo "เมื่อใช้คำสั่ง htmlspecialchars_decode"." ".":"." ".htmlspecialchars_decode($str2)."<br><br>"; ?>
</body>
</html>
ผลลัทธ์ที่ได้

- Selection_999(323).png (42.14 KiB) Viewed 239 times
เป็นอย่างไรกันบ้างสำหรับการใช้งานแต่ละคำสั่งหวังว่าจะเข้าใจกันนะครับก็หวังว่าบทความนี้จะเป็นความรู้ให้กับผู้ที่เข้ามาอ่านกันไม่มากก็น้อยนะครับ
สำหรับใครที่กำลังศึกษา [url=https://www.mindphp.com/%E0%B8%84%E0%B8%B9%E0%B9%88%E0%B8%A1%E0%B8%B7%E0%B8%AD/73-%E0%B8%84%E0%B8%B7%E0%B8%AD%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A3/2127-php-%E0%B8%84%E0%B8%B7%E0%B8%AD%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A3.html]php[/url] อยู่ล่ะก็คงจะเคยเห็นคำสั่งไหนซ่ักคำสั่งกันมาบ้างแล้วเพราะว่าเป็นคำสั่งที่น่าจะถูกเอามาเรียกใช่ในงานไหนซักงานนหนึ่งนี่แหละวันนี้เราก็จะมาอธบายการว่าคำสั่ง addslashes(), stripslashes(), htmlspecialchars() และ htmlspecialchars_decode() ต่างกันอย่างไร ลองไปดูกันเลย
addslashes() ใช้สำหรับเพิ่มตัวเครื่องหมาย backslashes (\) ขึ้นมาก่อนที่จะมีเครื่องหมายพิเศษต่าง ๆ เช่น (') single quote หรือ (") double quote
stripslashes() ก็จะทำงานตรงกันข้ามกับ addslashes() นั้นก็คือ มีไว้สำหรับตัดตัว backslashes (\) ออกไปจากข้อความของเรา
htmlspecialchars() เป็นฟังก์ชั่นที่ใช้สำหรับแปลงโค้ด html ที่ผู้ใช้ป้อนเข้ามาให็เป็น String ทั้งหมด
htmlspecialchars_decode() ก็จะทำงานตรงกันข้ามกับ htmlspecialchars() คือการแปลงจากโค้ด HTML กลับมาเป็นให้ออกมาเป็นคำสั่ง HTML
ตัวอย่าง
[code=php]<?php
$str="I'm ok";
echo "คำสั่ง addslashes()<br>";
echo "ค่าปกติ"." ".":"." ".$str."<br>";
echo "เมื่อใช้คำสั่ง addslashes()"." ".":"." ".addslashes($str)."<br><br>";
echo "คำสั่ง stripslashes()<br>";
echo "ค่าปกติ"." ".":"." ".$str."<br>";
echo "เมื่อใช้คำสั่ง stripslashes()"." ".":"." ".stripslashes($str)."<br><br>";
?>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<?php $str2="<a href='https://www.youtube.com/watch?v=1k9uvhTw9Fc'>'ชาไข่มุก</a>";?>
</head>
<body>
<?php echo "คำสั่ง htmlspecialchars()<br>"; ?>
<?php echo "ค่าปกติ"." ".":"." ".$str2."<br>"; ?>
<?php echo "เมื่อใช้คำสั่ง htmlspecialchars"." ".":"." ".htmlspecialchars($str2)."<br><br>"; ?>
<?php echo "คำสั่ง htmlspecialchars_decode()<br>"; ?>
<?php echo "ค่าจาก htmlspecialchars()"." ".":"." ".htmlspecialchars($str2)."<br>"; ?>
<?php echo "เมื่อใช้คำสั่ง htmlspecialchars_decode"." ".":"." ".htmlspecialchars_decode($str2)."<br><br>"; ?>
</body>
</html>
[/code]
ผลลัทธ์ที่ได้
[attachment=0]Selection_999(323).png[/attachment]
เป็นอย่างไรกันบ้างสำหรับการใช้งานแต่ละคำสั่งหวังว่าจะเข้าใจกันนะครับก็หวังว่าบทความนี้จะเป็นความรู้ให้กับผู้ที่เข้ามาอ่านกันไม่มากก็น้อยนะครับ