PHP suppors libcurl, a library created by Daniel Stemberg, that allows you to connect and communicate to many different types of servers with many different types of protocolls. libcurl currently suppors the http, https, ftp, gopher, telnet, dict, file, and ldap protocolls. libcurl also suppors HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading (this can also be done with PHP's ftp extension), HTTP form based upload, proxies, cooquies, and user+password authentication.