PHP תומכת ב libcurl, ספריה שנכתבה על ידי Daniel Stenberg, המאפשרת להתחבר ולתקשר עם סוגים שונים של שרתים ופרוטוקולים. libcurl תומכת כרגע בפרוטוקולים http, https, ftp, gopher, telnet, dict, file, ן ldap. libcurl , כמו כן תומכת ב HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading (שיכול להתבצע גם בעזרת PHP's ftp extension), HTTP form based upload, proxies, cookies, and user+password authentication.
על מנת להשתמש ב CURL functions עליך להתקין את חבילת ה» CURL. PHP מחייבת אותך להשתמש ב CURL 7.0.2-beta ומעלה. PHP לא תעבוד עם אף גירסה של CURL מתחת לגירסא 7.0.2-beta.
כדי להשתמש ב PHP's CURL support עליך לקמפל את PHP --with-curl[=DIR] כאשר DIR הוא המיקום של הספריה המכילה את ספריית ה lib וספריית ה include. בספריית "include" צריך להיות ספרייה בשם "curl" שצריכה להכיל את הקבצים easy.h ו curl.h. קובץ בשם "libcurl.a" צריך להמצא תחת ספריית "lib".
פונקציות אילו התווספו בגירסה PHP 4.0.2.
לאחר ש PHP קומפל עם CURL support, ניתן להתחיל להשתמש בפונקציות CURL. הרעיון הבסיסי העומד מאחורי פונקציות CURL הוא שמאותחל CURL session בעזרת curl_init(), ואז ניתן לקבוע את כל האופציות להעברת המידע דרך curl_exec() ,לאחר מכן נסגר ה session תוך כדי שימוש ב curl_close(). לפנינו דוגמה העושה שימוש בפונקציות CURL על מנת להביא את עמוד הבית של PHP לתוך קובץ:
Example#1 שימוש ב PHP's CURL module על מנת להביא את עמוד הבית של PHP
<?php
$ch = curl_init ("http://www.example.com/");
$fp = fopen ("example_homepage.txt", "w");
curl_setopt ($ch, CURLOPT_FILE, $fp);
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_exec ($ch);
curl_close ($ch);
fclose ($fp);
?>