PHP Request工具类
利用PHP进行HTTP请求是很常见的事情了,大家都知道用CURL来进行操作,但是CURL函数使用起来配置是很多的,很多人往往只有用到一小部分常用选项,这里我做了一个封装 主要功能 POST,GET COOKIE支持 URLENCODE支持(针对GET请求) 由于是静态方法,直接::调用即
利用PHP进行HTTP请求是很常见的事情了,大家都知道用CURL来进行操作,但是CURL函数使用起来配置是很多的,很多人往往只有用到一小部分常用选项,这里我做了一个封装
主要功能
POST,GET
COOKIE 支持
URLENCODE 支持(针对GET请求)
由于是静态方法,直接 :: 调用即可
<?php /** * @version 1.0 * @date 2014-08-11 * @author 十七号 <xialeistudio@gmail.com> * @license MIT * Class Request 网络工具类 */ class Request { /** * HTTP GET 请求 * @param string $url 请求地址 * @param array $data 请求数据 * @param null $cookie COOKIE * @param null $cookiefile COOKIE 请求所用的COOKIE文件位置 * @param null $cookiesavepath 请求完成的COOKIE保存位置 * @param bool $encode 是否对请求参数进行 urlencode 处理 * @return mixed * @throws Exception */ public static function get($url, $data = array(), $cookie = null, $cookiefile = null,$cookiesavepath = null, $encode = true) { //初始化句柄 $ch = curl_init(); //处理GET参数 if(count($data)>0){ $query = $encode?http_build_query($data):urldecode(http_build_query($data)); curl_setopt($ch, CURLOPT_URL, $url . '?' . $query); }else{ curl_setopt($ch, CURLOPT_URL, $url); } curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36'); //设置cookie if (isset($cookie)) curl_setopt($ch, CURLOPT_COOKIE, $cookie); //设置cookie请求文件 if (isset($cookiefile)){ if(!is_file($cookiefile)) throw new Exception('Cookie文件不存在'); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiefile); } //设置cookie保存路径 if(isset($cookiesavepath)) curl_setopt($ch,CURLOPT_COOKIEJAR,$cookiesavepath); //执行请求 $resp = curl_exec($ch); //关闭句柄,释放资源 curl_close($ch); return $resp; } /** * HTTP POST 请求 * @param string $url 请求地址 * @param array $data 请求数据 * @param null $cookie 请求COOKIE * @param null $cookiefile 请求时cookie文件位置 * @param null $cookiesavepath 请求完成的COOKIE保存位置 * @return string * @throws Exception */ public static function post($url, $data = array(), $cookie = null, $cookiefile = null,$cookiesavepath = null) { //初始化请求句柄 $ch = curl_init(); //参数设置 curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch,CURLOPT_POST,1); curl_setopt($ch,CURLOPT_POSTFIELDS,$data); curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36'); //cookie设置 if (isset($cookie)) curl_setopt($ch, CURLOPT_COOKIE, $cookie); //请求cookie设置 if (isset($cookiefile)){ if(!is_file($cookiefile)) throw new Exception('Cookie文件不存在'); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiefile); } //设置cookie保存路径 if(isset($cookiesavepath)) curl_setopt($ch,CURLOPT_COOKIEJAR,$cookiesavepath); $resp=curl_exec($ch); curl_close($ch); return $resp; } }

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Envoyant des données JSON à l'aide de la bibliothèque Curl de PHP dans le développement de PHP, il est souvent nécessaire d'interagir avec les API externes. L'une des façons courantes consiste à utiliser la bibliothèque Curl pour envoyer le post� ...

De nombreux développeurs de sites Web sont confrontés au problème de l'intégration de Node.js ou des services Python sous l'architecture de lampe: la lampe existante (Linux Apache MySQL PHP) a besoin d'un site Web ...

Configurez la tâche de synchronisation APScheduler en tant que service sur la plate-forme MacOS, si vous souhaitez configurer la tâche de synchronisation APScheduler en tant que service, similaire à Ngin ...

Comment remplacer la fonction Initialize_agent désactivée dans Langchain? Dans la bibliothèque de Langchain, initialize_agent ...

Utilisation alternative des annotations des paramètres Python Dans la programmation Python, les annotations des paramètres sont une fonction très utile qui peut aider les développeurs à mieux comprendre et utiliser les fonctions ...

Cet article décrit comment construire une base de données MongoDB hautement disponible sur un système Debian. Nous explorerons plusieurs façons de garantir que la sécurité des données et les services continueront de fonctionner. Stratégie clé: réplicaset: réplicaset: Utilisez des répliques pour obtenir la redondance des données et le basculement automatique. Lorsqu'un nœud maître échoue, l'ensemble de répliques élise automatiquement un nouveau nœud maître pour assurer la disponibilité continue du service. Sauvegarde et récupération des données: utilisez régulièrement la commande Mongodump pour sauvegarder la base de données et formuler des stratégies de récupération efficaces pour faire face au risque de perte de données. Surveillance et alarmes: déploier les outils de surveillance (tels que Prometheus, Grafana) pour surveiller l'état de course de MongoDB en temps réel, et

Comment enseigner les bases de la programmation novice en informatique dans les 10 heures? Si vous n'avez que 10 heures pour enseigner à l'informatique novice des connaissances en programmation, que choisissez-vous d'enseigner ...

En ce qui concerne le problème de la suppression de l'interpréteur Python qui est livré avec des systèmes Linux, de nombreuses distributions Linux préinstalleront l'interpréteur Python lors de l'installation, et il n'utilise pas le gestionnaire de packages ...
