当前位置: 首页>>代码示例>>PHP>>正文


PHP curl::get方法代码示例

本文整理汇总了PHP中curl::get方法的典型用法代码示例。如果您正苦于以下问题:PHP curl::get方法的具体用法?PHP curl::get怎么用?PHP curl::get使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在curl的用法示例。


在下文中一共展示了curl::get方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: getPublicKeyFromServer

 function getPublicKeyFromServer($server, $email)
 {
     /* refactor to 
     		$command = "gpg --keyserver ".escapeshellarg($server)." --search-keys ".escapeshellarg($email)."";
     		echo "$command\n\n";
     		
     		//execute the gnupg command
     		exec($command, $result);
     		*/
     $curl = new curl();
     // get Fingerprint
     $data = $curl->get("http://" . $server . ":11371/pks/lookup?search=" . urlencode($email) . "&op=index&fingerprint=on&exact=on");
     $data = $data['FILE'];
     preg_match_all("/<pre>([\\s\\S]*?)<\\/pre>/", $data, $matches);
     //$pub = $matches[1][1];
     preg_match_all("/<a href=\"(.*?)\">(\\w*)<\\/a>/", $matches[1][1], $matches);
     $url = $matches[1][0];
     $keyID = $matches[2][0];
     // get Public Key
     $data = $curl->get("http://" . $server . ":11371" . $url);
     $data = $data['FILE'];
     preg_match_all("/<pre>([\\s\\S]*?)<\\/pre>/", $data, $matches);
     $pub_key = trim($matches[1][0]);
     return array("keyID" => $keyID, "public_key" => $pub_key);
 }
开发者ID:baki250,项目名称:angular-io-app,代码行数:25,代码来源:class.pgp.php

示例2: definition

 function definition()
 {
     global $DB, $CFG, $COURSE;
     $mform =& $this->_form;
     $mform->addElement('textarea', 'querysql', get_string('querysql', 'block_configurable_reports'), 'rows="35" cols="80"');
     $mform->addRule('querysql', get_string('required'), 'required', null, 'client');
     $mform->setType('querysql', PARAM_RAW);
     $mform->addElement('hidden', 'courseid', $COURSE->id);
     $mform->setType('courseid', PARAM_INT);
     $this->add_action_buttons();
     $mform->addElement('static', 'note', '', get_string('listofsqlreports', 'block_configurable_reports'));
     if ($userandrepo = get_config('block_configurable_reports', 'sharedsqlrepository')) {
         $c = new curl();
         $res = $c->get("https://api.github.com/repos/{$userandrepo}/contents/");
         $res = json_decode($res);
         if (is_array($res)) {
             $reportcategories = array(get_string('choose'));
             foreach ($res as $item) {
                 if ($item->type == 'dir') {
                     $reportcategories[$item->path] = $item->path;
                 }
             }
             $mform->addElement('select', 'reportcategories', get_string('reportcategories', 'block_configurable_reports'), $reportcategories, array('onchange' => 'M.block_configurable_reports.onchange_reportcategories(this,"' . sesskey() . '")'));
             $mform->addElement('select', 'reportsincategory', get_string('reportsincategory', 'block_configurable_reports'), $reportcategories, array('onchange' => 'M.block_configurable_reports.onchange_reportsincategory(this,"' . sesskey() . '")'));
             $mform->addElement('textarea', 'remotequerysql', get_string('remotequerysql', 'block_configurable_reports'), 'rows="15" cols="90"');
         }
     }
     //$this->add_action_buttons();
 }
开发者ID:adonm,项目名称:learning,代码行数:29,代码来源:form.php

示例3: get

 /**
  * Makes a GET petition using the curl instance
  * 
  * @param string $uri
  * @return array
  */
 private function get($uri)
 {
     $response = $this->client->get(self::APIBASE . $uri);
     if ($response) {
         return json_decode($response);
     }
 }
开发者ID:robertboloc,项目名称:moodle-repository_bitbucket,代码行数:13,代码来源:bitbucket.php

示例4: curl

 /**
  * The contructor is a copy of the stock simplepie File class which has
  * been modifed to add in use the Moodle curl class rather than php curl
  * functions.
  */
 function moodle_simplepie_file($url, $timeout = 10, $redirects = 5, $headers = null, $useragent = null, $force_fsockopen = false)
 {
     $this->url = $url;
     $this->method = SIMPLEPIE_FILE_SOURCE_REMOTE | SIMPLEPIE_FILE_SOURCE_CURL;
     $curl = new curl();
     $curl->setopt(array('CURLOPT_HEADER' => true));
     try {
         $this->headers = $curl->get($url);
     } catch (moodle_exception $e) {
         $this->error = 'cURL Error: ' . $curl->error;
         $this->success = false;
         return false;
     }
     $parser =& new SimplePie_HTTP_Parser($this->headers);
     if ($parser->parse()) {
         $this->headers = $parser->headers;
         $this->body = $parser->body;
         $this->status_code = $parser->status_code;
         if (($this->status_code == 300 || $this->status_code == 301 || $this->status_code == 302 || $this->status_code == 303 || $this->status_code == 307 || $this->status_code > 307 && $this->status_code < 400) && isset($this->headers['location']) && $this->redirects < $redirects) {
             $this->redirects++;
             $location = SimplePie_Misc::absolutize_url($this->headers['location'], $url);
             return $this->SimplePie_File($location, $timeout, $redirects, $headers);
         }
     }
 }
开发者ID:nicolasconnault,项目名称:moodle2.0,代码行数:30,代码来源:moodle_simplepie.php

示例5: ip

 /**
  * ip地址查询
  */
 public function ip()
 {
     $ip = $this->post('ip');
     if (!$ip) {
         return;
     }
     $result = $ip_address = array();
     // tool.lu
     $toollu = curl::post('http://tool.lu/netcard/ajax.html', array('ip' => $ip));
     $toollu = json_decode($toollu, true);
     $result['tool.lu'] = trim($toollu['text'][2]);
     $result['纯真数据库'] = trim($toollu['text'][1]);
     // 站长工具
     $chinaz = curl::post('http://ip.chinaz.com', array('ip' => $ip));
     $chinaz = trim(preg_replace('/<.+?>/', '', $chinaz));
     $chinaz = explode('查询结果', $chinaz);
     if ($chinaz) {
         unset($chinaz[0]);
         $size = intval(count($chinaz));
         $chinaz[$size] = trim(substr($chinaz[$size], 0, strpos($chinaz[$size], 'document')));
         $address = '';
         foreach ($chinaz as $c) {
             $c = explode('==>>', $c);
             $ip_address_ = explode(':', trim($c[0]));
             $ip_address[] = trim($ip_address_[1]);
             $tmp_arr = explode("\r\n", trim($c[2]));
             $address .= trim($tmp_arr[0]) . '  ';
         }
         $result['站长工具'] = trim($address);
     }
     // 淘宝
     if ($ip_address) {
         $taobao = curl::get('http://ip.taobao.com/service/getIpInfo.php', array('ip' => $ip_address[0]));
         $taobao = json_decode($taobao, true);
         if (intval($taobao['code']) === 0) {
             $taobao = $taobao['data'];
             $result['淘宝'] = $taobao['country'] . '|' . $taobao['area'] . '|' . $taobao['region'] . '|' . $taobao['city'] . '|' . $taobao['isp'];
         }
     }
     // ipip.net
     if ($ip_address) {
         $ipip = curl::get('http://freeapi.ipip.net/' . $ip_address[0]);
         $ipip = json_decode($ipip, true);
         if (is_array($ipip)) {
             $ipipstr = '';
             foreach ($ipip as $str) {
                 $str = trim($str);
                 if (empty($str)) {
                     continue;
                 }
                 $ipipstr .= $str . ' ';
             }
             $result['ipip.net'] = $ipipstr;
         }
     }
     view::assign('input', $ip);
     view::assign('ip', $ip_address);
     view::assign('result', $result);
 }
开发者ID:luozhanhong,项目名称:share,代码行数:62,代码来源:server.php

示例6: _get_collection

 private function _get_collection($keyword)
 {
     global $OUTPUT;
     $list = array();
     $this->api = 'http://www.merlot.org/merlot/materials.rest?keywords=' . urlencode($keyword) . '&licenseKey=' . $this->licensekey;
     $c = new curl(array('cache' => true, 'module_cache' => 'repository'));
     $content = $c->get($this->api);
     $xml = simplexml_load_string($content);
     foreach ($xml->results->material as $entry) {
         $list[] = array('title' => (string) $entry->title, 'thumbnail' => $OUTPUT->pix_url('f/unknown-32')->out(false), 'date' => userdate((int) $entry->creationDate), 'size' => '', 'source' => (string) $entry->URL);
     }
     return $list;
 }
开发者ID:vuchannguyen,项目名称:web,代码行数:13,代码来源:lib.php

示例7: call_service

 /**
  * Calls the pluginfo.php service and returns the raw response
  *
  * @param string $component
  * @param string $version
  * @return string
  */
 protected function call_service($component, $version)
 {
     global $CFG;
     require_once $CFG->libdir . '/filelib.php';
     $curl = new curl(array('proxy' => true));
     $response = $curl->get($this->service_request_url(), $this->service_request_params($component, $version), $this->service_request_options());
     $curlerrno = $curl->get_errno();
     $curlinfo = $curl->get_info();
     if (!empty($curlerrno)) {
         throw new tool_installaddon_pluginfo_exception('err_curl_exec', array('url' => $curlinfo['url'], 'errno' => $curlerrno, 'error' => $curl->error));
     } else {
         if ($curlinfo['http_code'] != 200) {
             throw new tool_installaddon_pluginfo_exception('err_curl_http_code', array('url' => $curlinfo['url'], 'http_code' => $curlinfo['http_code']));
         } else {
             if (isset($curlinfo['ssl_verify_result']) and $curlinfo['ssl_verify_result'] != 0) {
                 throw new tool_installaddon_pluginfo_exception('err_curl_ssl_verify', array('url' => $curlinfo['url'], 'ssl_verify_result' => $curlinfo['ssl_verify_result']));
             }
         }
     }
     return $response;
 }
开发者ID:EmmanuelYupit,项目名称:educursos,代码行数:28,代码来源:pluginfo_client.php

示例8: _get_collection

 /**
  * Private method to get youtube search results
  * @param string $keyword
  * @param int $start
  * @param int $max max results
  * @param string $sort
  * @return array
  */
 private function _get_collection($keyword, $start, $max, $sort)
 {
     $list = array();
     $this->feed_url = 'http://gdata.youtube.com/feeds/api/videos?q=' . urlencode($keyword) . '&format=5&start-index=' . $start . '&max-results=' . $max . '&orderby=' . $sort;
     $c = new curl(array('cache' => true, 'module_cache' => 'repository'));
     $content = $c->get($this->feed_url);
     $xml = simplexml_load_string($content);
     $media = $xml->entry->children('http://search.yahoo.com/mrss/');
     $links = $xml->children('http://www.w3.org/2005/Atom');
     foreach ($xml->entry as $entry) {
         $media = $entry->children('http://search.yahoo.com/mrss/');
         $title = $media->group->title;
         $attrs = $media->group->thumbnail[2]->attributes();
         $thumbnail = $attrs['url'];
         $arr = explode('/', $entry->id);
         $id = $arr[count($arr) - 1];
         $source = 'http://www.youtube.com/v/' . $id . '#' . $title;
         $list[] = array('title' => (string) $title, 'thumbnail' => (string) $attrs['url'], 'thumbnail_width' => 150, 'thumbnail_height' => 120, 'size' => '', 'date' => '', 'source' => $source);
     }
     return $list;
 }
开发者ID:esyacelga,项目名称:sisadmaca,代码行数:29,代码来源:lib.php

示例9: validate_fields

 /**
  * Checks if the schema existing fields are properly set, triggers an exception otherwise.
  *
  * @throws \moodle_exception
  * @param array $fields
  * @param bool $requireexisting Require the fields to exist, otherwise exception.
  * @return void
  */
 protected function validate_fields(&$fields, $requireexisting = false)
 {
     global $CFG;
     foreach ($fields as $fieldname => $data) {
         $url = $this->engine->get_connection_url('/schema/fields/' . $fieldname);
         $results = $this->curl->get($url);
         if ($this->curl->error) {
             throw new \moodle_exception('errorcreatingschema', 'search_solr', '', $this->curl->error);
         }
         if (!$results) {
             throw new \moodle_exception('errorcreatingschema', 'search_solr', '', get_string('nodatafromserver', 'search_solr'));
         }
         $results = json_decode($results);
         if ($requireexisting && !empty($results->error) && $results->error->code === 404) {
             $a = new \stdClass();
             $a->fieldname = $fieldname;
             $a->setupurl = $CFG->wwwroot . '/search/engine/solr/setup_schema.php';
             throw new \moodle_exception('errorvalidatingschema', 'search_solr', '', $a);
         }
         // The field should not exist so we only accept 404 errors.
         if (empty($results->error) || !empty($results->error) && $results->error->code !== 404) {
             if (!empty($results->error)) {
                 throw new \moodle_exception('errorcreatingschema', 'search_solr', '', $results->error->msg);
             } else {
                 // All these field attributes are set when fields are added through this script and should
                 // be returned and match the defined field's values.
                 if (empty($results->field) || !isset($results->field->type) || !isset($results->field->multiValued) || !isset($results->field->indexed) || !isset($results->field->stored)) {
                     throw new \moodle_exception('errorcreatingschema', 'search_solr', '', get_string('schemafieldautocreated', 'search_solr', $fieldname));
                 } else {
                     if ($results->field->type !== $data['type'] && ($data['type'] !== 'text' || $results->field->type !== 'text_general') || $results->field->multiValued !== false || $results->field->indexed !== $data['indexed'] || $results->field->stored !== $data['stored']) {
                         throw new \moodle_exception('errorcreatingschema', 'search_solr', '', get_string('schemafieldautocreated', 'search_solr', $fieldname));
                     } else {
                         // The field already exists and it is properly defined, no need to create it.
                         unset($fields[$fieldname]);
                     }
                 }
             }
         }
     }
 }
开发者ID:evltuma,项目名称:moodle,代码行数:48,代码来源:schema.php

示例10: request_token

 /**
  * Request token for authentication
  * This is the first step to use OAuth, it will return oauth_token and oauth_token_secret
  * @return array
  */
 public function request_token()
 {
     $this->sign_secret = $this->consumer_secret . '&';
     $params = $this->prepare_oauth_parameters($this->request_token_api, array(), 'GET');
     $content = $this->http->get($this->request_token_api, $params, $this->http_options);
     // Including:
     //     oauth_token
     //     oauth_token_secret
     $result = $this->parse_result($content);
     if (empty($result['oauth_token'])) {
         throw new moodle_exception('Error while requesting an oauth token');
     }
     // build oauth authrize url
     if (!empty($this->oauth_callback)) {
         // url must be rawurlencode
         $result['authorize_url'] = $this->authorize_url . '?oauth_token=' . $result['oauth_token'] . '&oauth_callback=' . rawurlencode($this->oauth_callback->out(false));
     } else {
         // no callback
         $result['authorize_url'] = $this->authorize_url . '?oauth_token=' . $result['oauth_token'];
     }
     return $result;
 }
开发者ID:dg711,项目名称:moodle,代码行数:27,代码来源:oauthlib.php

示例11: curl_request

 public function curl_request($action, $collection = null)
 {
     $curl = new curl();
     switch ($action) {
         case 'user':
             $url = $this->backpack . "/displayer/convert/email";
             $param = array('email' => $this->email);
             break;
         case 'groups':
             $url = $this->backpack . '/displayer/' . $this->backpackuid . '/groups.json';
             break;
         case 'badges':
             $url = $this->backpack . '/displayer/' . $this->backpackuid . '/group/' . $collection . '.json';
             break;
     }
     $options = array('FRESH_CONNECT' => true, 'RETURNTRANSFER' => true, 'FORBID_REUSE' => true, 'HEADER' => 0, 'HTTPHEADER' => array('Expect:'), 'CONNECTTIMEOUT' => 3);
     if ($action == 'user') {
         $out = $curl->post($url, $param, $options);
     } else {
         $out = $curl->get($url, array(), $options);
     }
     return json_decode($out);
 }
开发者ID:bobpuffer,项目名称:moodleUCLA-LUTH,代码行数:23,代码来源:backpacklib.php

示例12: do_request

 /**
  * Send the request via our curl object.
  *
  * @param curl $curl prepared curl object.
  * @param Google_HttpRequest $request The request.
  * @return string result of the request.
  */
 private function do_request($curl, $request)
 {
     $url = $request->getUrl();
     $method = $request->getRequestMethod();
     switch (strtoupper($method)) {
         case 'POST':
             $ret = $curl->post($url, $request->getPostBody());
             break;
         case 'GET':
             $ret = $curl->get($url);
             break;
         case 'HEAD':
             $ret = $curl->head($url);
             break;
         case 'PUT':
             $ret = $curl->put($url);
             break;
         default:
             throw new coding_exception('Unknown request type: ' . $method);
             break;
     }
     return $ret;
 }
开发者ID:EmmanuelYupit,项目名称:educursos,代码行数:30,代码来源:curlio.php

示例13: loginpage_hook

 /**
  * Authentication hook - is called every time user hit the login page
  * The code is run only if the param code is mentionned.
  */
 public function loginpage_hook()
 {
     global $USER, $SESSION, $CFG, $DB;
     // Check the Google authorization code.
     $authorizationcode = optional_param('code', '', PARAM_TEXT);
     if (!empty($authorizationcode)) {
         $authprovider = required_param('authprovider', PARAM_ALPHANUMEXT);
         require_once $CFG->dirroot . '/auth/googleoauth2/classes/provider/' . $authprovider . '.php';
         $providerclassname = 'provideroauth2' . $authprovider;
         $provider = new $providerclassname();
         // Try to get an access token (using the authorization code grant).
         $token = $provider->getAccessToken('authorization_code', ['code' => $authorizationcode]);
         $accesstoken = $token->accessToken;
         $refreshtoken = $token->refreshToken;
         $tokenexpires = $token->expires;
         // With access token request by curl the email address.
         if (!empty($accesstoken)) {
             try {
                 // We got an access token, let's now get the user's details.
                 $userdetails = $provider->getUserDetails($token);
                 // Use these details to create a new profile.
                 switch ($authprovider) {
                     case 'battlenet':
                         // Battlenet as no email notion.
                         // TODO: need to check the idp table for matching user and request user to add his email.
                         // TODO: It will be similar logic for twitter.
                         $useremail = $userdetails->id . '@fakebattle.net';
                         break;
                     case 'github':
                         $useremails = $provider->getUserEmails($token);
                         // Going to try to find someone with a similar email using googleoauth2 auth.
                         $fallbackuseremail = '';
                         foreach ($useremails as $githubuseremail) {
                             if ($githubuseremail->verified) {
                                 if ($DB->record_exists('user', array('auth' => 'googleoauth2', 'email' => $githubuseremail->email))) {
                                     $useremail = $githubuseremail->email;
                                 }
                                 $fallbackuseremail = $githubuseremail->email;
                             }
                         }
                         // If we didn't find anyone then we take a verified email address.
                         if (empty($useremail)) {
                             $useremail = $fallbackuseremail;
                         }
                         break;
                     case 'vk':
                         // VK doesn't return the email address?
                         if ($userdetails->uid) {
                             $useremail = 'id' . $userdetails->uid . '@vkmessenger.com';
                         }
                         break;
                     default:
                         $useremail = $userdetails->email;
                         break;
                 }
                 $verified = 1;
             } catch (Exception $e) {
                 // Failed to get user details.
                 throw new moodle_exception('faileduserdetails', 'auth_googleoauth2');
             }
             // Throw an error if the email address is not verified.
             if (!$verified) {
                 throw new moodle_exception('emailaddressmustbeverified', 'auth_googleoauth2');
             }
             // Prohibit login if email belongs to the prohibited domain.
             if ($err = email_is_not_allowed($useremail)) {
                 throw new moodle_exception($err, 'auth_googleoauth2');
             }
             // If email not existing in user database then create a new username (userX).
             if (empty($useremail) or $useremail != clean_param($useremail, PARAM_EMAIL)) {
                 throw new moodle_exception('couldnotgetuseremail', 'auth_googleoauth2');
                 // TODO: display a link for people to retry.
             }
             // Get the user.
             // Don't bother with auth = googleoauth2 because authenticate_user_login() will fail it if it's not 'googleoauth2'.
             $user = $DB->get_record('user', array('email' => $useremail, 'deleted' => 0, 'mnethostid' => $CFG->mnet_localhost_id));
             // Create the user if it doesn't exist.
             if (empty($user)) {
                 // Deny login if setting "Prevent account creation when authenticating" is on.
                 if ($CFG->authpreventaccountcreation) {
                     throw new moodle_exception("noaccountyet", "auth_googleoauth2");
                 }
                 // Get following incremented username.
                 $googleuserprefix = core_text::strtolower(get_config('auth/googleoauth2', 'googleuserprefix'));
                 $lastusernumber = get_config('auth/googleoauth2', 'lastusernumber');
                 $lastusernumber = empty($lastusernumber) ? 1 : $lastusernumber + 1;
                 // Check the user doesn't exist.
                 $nextuser = $DB->record_exists('user', array('username' => $googleuserprefix . $lastusernumber));
                 while ($nextuser) {
                     $lastusernumber++;
                     $nextuser = $DB->record_exists('user', array('username' => $googleuserprefix . $lastusernumber));
                 }
                 set_config('lastusernumber', $lastusernumber, 'auth/googleoauth2');
                 $username = $googleuserprefix . $lastusernumber;
                 // Retrieve more information from the provider.
                 $newuser = new stdClass();
//.........这里部分代码省略.........
开发者ID:sumitnegi933,项目名称:Moodle_lms_New,代码行数:101,代码来源:auth.php

示例14: dirname

 * A Moodle block for creating Configurable Reports
 * @package blocks
 * @author: Juan leyva <http://www.twitter.com/jleyvadelgado>
 * @date: 2009
 */
define('AJAX_SCRIPT', true);
require dirname(dirname(dirname(__FILE__))) . '/config.php';
require_once $CFG->libdir . '/filelib.php';
$action = required_param('action', PARAM_ALPHA);
if (!($userandrepo = get_config('block_configurable_reports', 'crrepository'))) {
    echo json_encode(array());
    die;
}
$c = new curl();
if ($action == 'listreports') {
    if ($res = $c->get("https://api.github.com/repos/{$userandrepo}/contents/")) {
        $data = json_decode($res);
        if (!is_array($data)) {
            echo json_encode(array());
            die;
        }
        foreach ($data as $key => $d) {
            if ($d->type != 'dir') {
                unset($data[$key]);
            }
        }
        echo json_encode($data);
        die;
    }
} else {
    if ($action == 'listcategory') {
开发者ID:adonm,项目名称:learning,代码行数:31,代码来源:repository.php

示例15: bigbluebuttonbn_wrap_simplexml_load_file

function bigbluebuttonbn_wrap_simplexml_load_file($url)
{
    if (extension_loaded('curl')) {
        $c = new curl();
        $c->setopt(array("SSL_VERIFYPEER" => true));
        $response = $c->get($url);
        if ($response) {
            $previous = libxml_use_internal_errors(true);
            try {
                $xml = new SimpleXMLElement($response, LIBXML_NOCDATA);
                return $xml;
            } catch (Exception $e) {
                libxml_use_internal_errors($previous);
                error_log("The XML response is not correct on wrap_simplexml_load_file: " . $e->getMessage());
                return NULL;
            }
        } else {
            error_log("No response on wrap_simplexml_load_file");
            return NULL;
        }
    } else {
        $previous = libxml_use_internal_errors(true);
        try {
            $xml = simplexml_load_file($url, 'SimpleXMLElement', LIBXML_NOCDATA);
            return $xml;
        } catch (Exception $e) {
            libxml_use_internal_errors($previous);
            return NULL;
        }
    }
}
开发者ID:Brotality,项目名称:moodle-mod_streamline,代码行数:31,代码来源:BBBlocallib.php


注:本文中的curl::get方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。