Skip to content

Commit 783594a

Browse files
authored
Merge pull request php-curl-class#372 from zachborboa/371
Merge php-curl-class#371
2 parents f619176 + 004021f commit 783594a

File tree

2 files changed

+59
-1
lines changed

2 files changed

+59
-1
lines changed

src/Curl/Curl.php

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -593,6 +593,35 @@ public function put($url, $data = array())
593593
return $this->exec();
594594
}
595595

596+
/**
597+
* Search
598+
*
599+
* @access public
600+
* @param $url
601+
* @param $data
602+
*
603+
* @return string
604+
*/
605+
public function search($url, $data = array())
606+
{
607+
if (is_array($url)) {
608+
$data = $url;
609+
$url = $this->baseUrl;
610+
}
611+
$this->setURL($url);
612+
$this->setOpt(CURLOPT_CUSTOMREQUEST, 'SEARCH');
613+
$put_data = $this->buildPostData($data);
614+
if (empty($this->options[CURLOPT_INFILE]) && empty($this->options[CURLOPT_INFILESIZE])) {
615+
if (is_string($put_data)) {
616+
$this->setHeader('Content-Length', strlen($put_data));
617+
}
618+
}
619+
if (!empty($put_data)) {
620+
$this->setOpt(CURLOPT_POSTFIELDS, $put_data);
621+
}
622+
return $this->exec();
623+
}
624+
596625
/**
597626
* Set Basic Authentication
598627
*

src/Curl/MultiCurl.php

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,36 @@ public function addPut($url, $data = array())
246246
$curl->setURL($url);
247247
$curl->setOpt(CURLOPT_CUSTOMREQUEST, 'PUT');
248248
$put_data = $curl->buildPostData($data);
249-
$curl->setHeader('Content-Length', strlen($put_data));
249+
if (is_string($put_data)) {
250+
$curl->setHeader('Content-Length', strlen($put_data));
251+
}
252+
$curl->setOpt(CURLOPT_POSTFIELDS, $put_data);
253+
$this->addHandle($curl);
254+
return $curl;
255+
}
256+
257+
/**
258+
* Add Search
259+
*
260+
* @access public
261+
* @param $url
262+
* @param $data
263+
*
264+
* @return object
265+
*/
266+
public function addSearch($url, $data = array())
267+
{
268+
if (is_array($url)) {
269+
$data = $url;
270+
$url = $this->baseUrl;
271+
}
272+
$curl = new Curl();
273+
$curl->setURL($url);
274+
$curl->setOpt(CURLOPT_CUSTOMREQUEST, 'SEARCH');
275+
$put_data = $curl->buildPostData($data);
276+
if (is_string($put_data)) {
277+
$curl->setHeader('Content-Length', strlen($put_data));
278+
}
250279
$curl->setOpt(CURLOPT_POSTFIELDS, $put_data);
251280
$this->addHandle($curl);
252281
return $curl;

0 commit comments

Comments
 (0)