สำหรับการการข้อข้อมูลจากเว็บไซต์นั้นก็จะมีได้หลายอย่างเช่นการใช้
api หรือจะให้แปลงข้อมูลที่เราส่งไปเป็นตั้น ซึ่งการใช้
curl ใน
php นั้นก็สามารถทำได้ดังนี้
โค้ด: เลือกทั้งหมด
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.example.com' );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERPWD, "user:password");
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
เรามาดูบรรทัดแรกกันก่อนให้สร้างตัวแปลมากเก็บฟังชั่น curl_init(); ก่อน
จากนั้นให้เราเชื่อมต่อเว็บไซต์โดยการใช้คำสั่ง CURLOPT_URL แล้วต่อด้วย url ของเว็บไซต์
บรรทัดต่อมาเป็นการให้ค่า ค่ากลับมาในรูปแบบ string
บรรทัดต่อมาถ้าเว็บไซต์ที่เราจะขอข้อมูลต้องมี username กับ password เราจำเป็นต้องใช้คำสั่ง CURLOPT_USERPWD
บรรทัดสุดท้ายคือ array ที่เก็บค่า http header
เท่านี้ตัวแปล $ch ก็จะเก็บข้อมูลเอาไว้แล้ว
วิธีการนำค่าเอามาอยู่ในตัวแปลเราก็จะใช้คำสั่ง curl_exec สามารถเขียนได้ดังนี้
สำหรับการการข้อข้อมูลจากเว็บไซต์นั้นก็จะมีได้หลายอย่างเช่นการใช้ [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/2038-api-%E0%B8%84%E0%B8%B7%E0%B8%AD%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A3.html]api[/url] หรือจะให้แปลงข้อมูลที่เราส่งไปเป็นตั้น ซึ่งการใช้ [url=https://www.mindphp.com/forums/viewtopic.php?f=29&t=58032]curl[/url] ใน [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] นั้นก็สามารถทำได้ดังนี้
[code]
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.example.com' );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERPWD, "user:password");
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
[/code]
เรามาดูบรรทัดแรกกันก่อนให้สร้างตัวแปลมากเก็บฟังชั่น curl_init(); ก่อน
จากนั้นให้เราเชื่อมต่อเว็บไซต์โดยการใช้คำสั่ง CURLOPT_URL แล้วต่อด้วย url ของเว็บไซต์
บรรทัดต่อมาเป็นการให้ค่า ค่ากลับมาในรูปแบบ string
บรรทัดต่อมาถ้าเว็บไซต์ที่เราจะขอข้อมูลต้องมี username กับ password เราจำเป็นต้องใช้คำสั่ง CURLOPT_USERPWD
บรรทัดสุดท้ายคือ array ที่เก็บค่า http header
เท่านี้ตัวแปล $ch ก็จะเก็บข้อมูลเอาไว้แล้ว
วิธีการนำค่าเอามาอยู่ในตัวแปลเราก็จะใช้คำสั่ง curl_exec สามารถเขียนได้ดังนี้
[code]$output = curl_exec($ch);[/code]