ใช้ filegetcontents() ไม่ได้ ก็ลองใช้ cURL แทนดูสิ


ตัวอย่างงานนี้ ก็คือเราจะไปเอารายละเอียด IP ผู้ใช้ที่เข้ามาในเว็บไซต์ว่า IP นี้มีรายละเอียดอย่างไร อยู่ประเทศไหน อะไรยังไงบ้าง ก็ไปหาๆ โค้ดจากต่างประเทศ ส่วนมากก็จะให้ใช้ file_get_contents() ซึ่งมันต้องไปเปิด allow_url_fopen ที่ php.ini ของเซิร์ฟเวอร์นี่สิ

ด้วยความขี้เกียจ ก็ไปหาวิธีอื่นว่ามีไหม จึงไปเจอว่า ใช่ cURL ก็ได้นะ แต่โค้ดมันจะดูไม่ค่อยรู้เรื่องหน่อย เคนสรุปให้เอาไปลองดูกันเองเลยละกัน ไม่อธิบายนะ งงเหมือนกัน แต่มันใช้ได้ 555

// ไปดึงข้อมูลจากเว็บ ipinfo.io
$getloc = json_decode($this->getContents("http://ipinfo.io/"));

// ปริ้นท์ทุกอย่างออกมาดู
print_r($getloc);

// เลือกสิ่งที่ต้องการจะเอามาใช้งาน
$customer_country = strtolower(trim($getloc->country));

function getContents($url)
{
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION ,1);
    curl_setopt($ch, CURLOPT_HEADER,0);  // DO NOT RETURN HTTP HEADERS
    curl_setopt($ch, CURLOPT_RETURNTRANSFER  ,1);  // RETURN THE CONTENTS
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT  ,0);
    $Rec_Data = curl_exec($ch);
    return $Rec_Data;
}
0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
Navigate

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

ตั้งค่าความเป็นส่วนตัว

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

ยอมรับทั้งหมด
จัดการความเป็นส่วนตัว
  • คุกกี้ที่จำเป็น
    เปิดใช้งานตลอด

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

  • คุกกี้เพื่อการวิเคราะห์

    คุกกี้นี้เป็นการเก็บข้อมูลสาธารณะสำหรับการวิเคราะห์ และเก็บสถิติการใช้งานภายในเว็บไซต์นี้เท่านั้น ไม่ได้เก็บข้อมูลส่วนตัวที่ไม่เป็นสาธารณะใดๆ ของผู้ใช้งาน

บันทึกการตั้งค่า
0
Would love your thoughts, please comment.x
()
x