/ / PHP: รับเนื้อหาของหน้าเว็บฟีด RSS หรือไฟล์ XML เป็นตัวแปรสตริง

PHP: รับเนื้อหาของหน้าเว็บฟีด RSS หรือไฟล์ XML ลงในตัวแปรสตริง

คุณมักจะต้องเข้าถึงข้อมูลนั้นอยู่บนเซิร์ฟเวอร์อื่นไม่ว่าคุณจะเขียนตัวรวบรวม RSS ออนไลน์หรือทำการคัดลอกหน้าจอสำหรับกลไกการค้นหา PHP ทำให้การดึงข้อมูลนี้เป็นตัวแปรสตริงเป็นกระบวนการที่ง่ายมาก

คุณสามารถใช้วิธีการสั้น ๆ :

$ url =“ https://www.howtogeek.com”;

$ str = file_get_contents ($ url);

 

ปัญหาเดียวของวิธีนี้คือโฮสต์เว็บบางแห่งมีการเข้าถึง url ที่ถูกบล็อกในวิธีการของไฟล์ด้วยเหตุผลด้านความปลอดภัย คุณอาจใช้วิธีการแก้ปัญหานี้แทนได้:

function get_url_contents($url){
$crl = curl_init();
$timeout = 5;
curl_setopt ($crl, CURLOPT_URL,$url);
curl_setopt ($crl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($crl, CURLOPT_CONNECTTIMEOUT, $timeout);
$ret = curl_exec($crl);
curl_close($crl);
return $ret;
}

ตอนนี้คุณควรมีเนื้อหาของเว็บไซต์ในตัวแปรสตริง โปรดทราบว่าการดำเนินการนี้ไม่ได้ดึงไฟล์ที่สนับสนุนเช่น javascript หรือ CSS คุณจะต้องแยกวิเคราะห์หน้าเพิ่มเติมและดึงข้อมูลเหล่านั้นออกจากกันหากคุณต้องการข้อมูลทั้งหมด