options() public method

Options
public options ( $url, $data = [] ) : string
$url
$data
return string
示例#1
0
<?php

require __DIR__ . '/vendor/autoload.php';
use Curl\Curl;
// curl --get --request OPTIONS "http://127.0.0.1:8000/" --data "foo=bar"
$curl = new Curl();
$curl->options('http://127.0.0.1:8000/', array('foo' => 'bar'));
if ($curl->error) {
    echo 'Error: ' . $curl->errorCode . ': ' . $curl->errorMessage;
} else {
    echo 'Response:' . "\n";
    var_dump($curl->response);
}
 public function testSetUrl()
 {
     $data = array('key' => 'value');
     $curl = new Curl();
     $curl->setHeader('X-DEBUG-TEST', 'get');
     $curl->setUrl(Test::TEST_URL);
     $curl->delete($data);
     $this->assertEquals(Test::TEST_URL, $curl->base_url);
     $this->assertEquals('key=value', $curl->response);
     $curl = new Curl();
     $curl->setHeader('X-DEBUG-TEST', 'get');
     $curl->setUrl(Test::TEST_URL);
     $curl->get($data);
     $this->assertEquals(Test::TEST_URL, $curl->base_url);
     $this->assertEquals('key=value', $curl->response);
     $curl = new Curl();
     $curl->setHeader('X-DEBUG-TEST', 'get');
     $curl->setUrl(Test::TEST_URL);
     $curl->head($data);
     $this->assertEquals(Test::TEST_URL, $curl->base_url);
     $this->assertEquals('HEAD /?key=value HTTP/1.1', $curl->request_headers['Request-Line']);
     $curl = new Curl();
     $curl->setHeader('X-DEBUG-TEST', 'get');
     $curl->setUrl(Test::TEST_URL);
     $curl->options($data);
     $this->assertEquals(Test::TEST_URL, $curl->base_url);
     $this->assertEquals('key=value', $curl->response);
     $curl = new Curl();
     $curl->setHeader('X-DEBUG-TEST', 'request_method');
     $curl->setUrl(Test::TEST_URL);
     $curl->patch($data);
     $this->assertEquals(Test::TEST_URL, $curl->base_url);
     $this->assertEquals('PATCH', $curl->response);
     $curl = new Curl();
     $curl->setHeader('X-DEBUG-TEST', 'post');
     $curl->setUrl(Test::TEST_URL);
     $curl->post($data);
     $this->assertEquals(Test::TEST_URL, $curl->base_url);
     $this->assertEquals('key=value', $curl->response);
     $curl = new Curl();
     $curl->setHeader('X-DEBUG-TEST', 'put');
     $curl->setUrl(Test::TEST_URL);
     $curl->put($data);
     $this->assertEquals(Test::TEST_URL, $curl->base_url);
     $this->assertEquals('key=value', $curl->response);
 }
 public function testSetUrl()
 {
     $data = array('key' => 'value');
     $curl = new Curl();
     $curl->setUrl(Test::TEST_URL);
     $curl->delete($data);
     $this->assertEquals('DELETE /?key=value HTTP/1.1', $curl->requestHeaders['Request-Line']);
     $this->assertEquals(Test::TEST_URL . '?key=value', $curl->effectiveUrl);
     $curl = new Curl();
     $curl->setUrl(Test::TEST_URL);
     $curl->get($data);
     $this->assertEquals('GET /?key=value HTTP/1.1', $curl->requestHeaders['Request-Line']);
     $this->assertEquals(Test::TEST_URL . '?key=value', $curl->effectiveUrl);
     $curl = new Curl();
     $curl->setUrl(Test::TEST_URL);
     $curl->head($data);
     $this->assertEquals('HEAD /?key=value HTTP/1.1', $curl->requestHeaders['Request-Line']);
     $this->assertEquals(Test::TEST_URL . '?key=value', $curl->effectiveUrl);
     $curl = new Curl();
     $curl->setUrl(Test::TEST_URL);
     $curl->options($data);
     $this->assertEquals('OPTIONS /?key=value HTTP/1.1', $curl->requestHeaders['Request-Line']);
     $this->assertEquals(Test::TEST_URL . '?key=value', $curl->effectiveUrl);
     $curl = new Curl();
     $curl->setUrl(Test::TEST_URL);
     $curl->patch($data);
     $this->assertEquals('PATCH / HTTP/1.1', $curl->requestHeaders['Request-Line']);
     $this->assertEquals(Test::TEST_URL, $curl->effectiveUrl);
     $curl = new Curl();
     $curl->setUrl(Test::TEST_URL);
     $curl->post($data);
     $this->assertEquals('POST / HTTP/1.1', $curl->requestHeaders['Request-Line']);
     $this->assertEquals(Test::TEST_URL, $curl->effectiveUrl);
     $curl = new Curl();
     $curl->setUrl(Test::TEST_URL);
     $curl->put($data);
     $this->assertEquals('PUT / HTTP/1.1', $curl->requestHeaders['Request-Line']);
     $this->assertEquals(Test::TEST_URL, $curl->effectiveUrl);
 }