ขั้นตอนการแยกพารามิเตอร์ ด้วย function explode ภาษา PHP

ขั้นตอนการแยกพารามิเตอร์ ด้วย function explode ภาษา PHP
ปรับปรุงล่าสุด 22 ต.ค. 2566, 21:28 46 ครั้งเรียบเรียงโดย กฤติเดช ฉายจรุง
ขั้นตอนการแยกพารามิเตอร์ ด้วย explode ภาษา PHP
วัตถุประสงค์ เพื่อดึงข้อมูลมาแสดงผลหน้าเว็บด้วยภาษา PHP สามารถทำได้ดังนี้
- กำหนดตัวแปรเพื่อเก็บค่าพารามิเตอร์
PHP
$category = $_GET['category'];
- ใช้ฟังก์ชัน
explode()เพื่อแยกค่าพารามิเตอร์ออกเป็นอาร์เรย์
PHP
$categories = explode('/', $category);
- ดึงข้อมูลตามหมวดหมู่ข่าวที่เลือก
PHP
$news = getNewsByCategory($categories[1]);
- แสดงผลข้อมูลข่าว
PHP
foreach ($news as $newsItem) { echo $newsItem['title'] . '<br>'; echo $newsItem['content'] . '<br>'; }
ตัวอย่างโค้ด PHP สำหรับการแยกพารามิเตอร์เพื่อดึงข้อมูลข่าวมาแสดงผลหน้าเว็บ
PHP
<?php $category = $_GET['category']; $categories = explode('/', $category); $news = getNewsByCategory($categories[1]); foreach ($news as $newsItem) { echo $newsItem['title'] . '<br>'; echo $newsItem['content'] . '<br>'; } function getNewsByCategory($category) { // เชื่อมต่อฐานข้อมูล $conn = new PDO('mysql:host=localhost;dbname=my_database', 'username', 'password'); // เรียกใช้คิวรี SQL เพื่อดึงข้อมูลข่าวตามหมวดหมู่ $sql = 'SELECT * FROM news WHERE category = :category'; $stmt = $conn->prepare($sql); $stmt->bindParam(':category', $category, PDO::PARAM_STR); $stmt->execute(); // เก็บข้อมูลข่าวลงในอาร์เรย์ $news = $stmt->fetchAll(PDO::FETCH_ASSOC); // คืนค่าอาร์เรย์ข้อมูลข่าว return $news; } ?>
ตัวอย่างการเรียกใช้โค้ด
http://example.com/news/category/technology
ผลลัพธ์
ข่าวเทคโนโลยี เนื้อหาข่าวเทคโนโลยี
นอกจากนี้ ยังสามารถใช้ฟังก์ชัน parse_url() เพื่อแยกพารามิเตอร์ทั้งหมดใน URL ออกเป็นอาร์เรย์ได้อีกด้วย ดังนี้
PHP
$url = 'https://example.com/news/category/technology'; $params = parse_url($url, PHP_URL_QUERY); $category = $params['category'];
ตัวอย่างโค้ด PHP สำหรับการแยกพารามิเตอร์ทั้งหมดใน URL
PHP
<?php $url = 'https://example.com/news/category/technology'; $params = parse_url($url, PHP_URL_QUERY); $category = $params['category']; echo $category; ?>
ผลลัพธ์
technology
ติดต่อสอบถาม
ฝ่ายปฏิบัติงาน / ฝ่ายลูกค้าสัมพันธ์
ฝ่ายปฏิบัติงาน โทร 0894222350 ฝ่ายลูกค้าสัมพันธ์ โทร 0881597444