Skip to content
World Wide Web Server edited this page Jul 4, 2012 · 28 revisions

Category:Libraries | Category:Libraries::Community | Category:Libraries::Connectivity

This library was made to make using cURL in CodeIgniter a little easier. It handles the following:

[h3]Features[/h3]

  • POST/GET requests over HTTP
  • HTTP Authentication
  • Follows redirects
  • Returns error string
  • Provides debug information
  • Proxy support
  • Cookies

[h3]Download[/h3] [url]http://github.com/philsturgeon/codeigniter-curl[/url]

[h3]Examples[/h3]

[code]$this->load->library('curl');[/code]

[h4]Simple calls[/h4] These do it all in one line of code to make life easy. They return the body of the page, or FALSE on fail.

[code]// Simple call to remote URL echo $this->curl->simple_get('http://example.com/');

// Simple call to CI URI $this->curl->simple_post('controller/method', array('foo'=>'bar'));

// Set advanced options in simple calls // Can use any of these flags http://uk3.php.net/manual/en/function.curl-setopt.php

$this->curl->simple_get('http://example.com', array(CURLOPT_PORT => 8080)); $this->curl->simple_post('http://example.com', array('foo'=>'bar'), array(CURLOPT_BUFFERSIZE => 10)); [/code]

[h4]Advanced calls[/h4]

These methods allow you to build a more complex request.

[code]// Start session (also wipes existing/previous sessions) $this->curl->create('http://example.com/');

// Option & Options $this->curl->option(CURLOPT_BUFFERSIZE, 10); $this->curl->options(array(CURLOPT_BUFFERSIZE => 10));

// Login to HTTP user authentication $this->curl->http_login('username', 'password');

// Post - If you do not use post, it will just run a GET request $post = array('foo'=>'bar'); $this->curl->post($post);

// Cookies - If you do not use post, it will just run a GET request $vars = array('foo'=>'bar'); $this->curl->set_cookies($vars);

// Proxy - Request the page through a proxy server // Port is optional, defaults to 80 $this->curl->proxy('http://example.com', 1080); $this->curl->proxy('http://example.com');

// Proxy login $this->curl->proxy_login('username', 'password');

// Execute - returns responce echo $this->curl->execute();

// Debug data ------------------------------------------------

// Errors $this->curl->error_code; // int $this->curl->error_string;

// Information $this->curl->info; // array

[/code]

Category:Contributions::Libraries::Networking

Clone this wiki locally