Maison > développement back-end > tutoriel php > À propos de la classe de requête PHP Express

À propos de la classe de requête PHP Express

jacklove
Libérer: 2023-03-27 10:38:02
original
2468 Les gens l'ont consulté

Cet article présentera les méthodes associées à la classe de requête express PHP.

Société express, tant que vous entrez directement le numéro express, vous pouvez identifier automatiquement la société express et les informations logistiques où se trouve le numéro express. Cela ne prend que quelques lignes de code. être parfaitement intégré aux fonctions de votre système !

Exemple d'utilisation : utilisez comme suit, appelez simplement la méthode getLogisticsInfo() dans la classe et transmettez le numéro de commande en paramètre $e = new Express();

$data = $e->getLogisticsInfo("453371918456");
echo &#39;<pre class="brush:php;toolbar:false">&#39;;var_dump($data);
Copier après la connexion
<?php/**
 * Express.class.php 快递查询类
 *
 * @author 王浩铭
 * @date 2017/09/27
 */class Express {    /**
     * @desc 采集网页内容的方法,建议使用curl,效率更高
     * @param $url
     * @return mixed|string
     */
    private function getContent($url){        if(function_exists("file_get_contents")){
            $file_contents = file_get_contents($url);
        }else{
            $ch = curl_init();
            $timeout = 5;   // 设置5秒超时
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
            $file_contents = curl_exec($ch);
            curl_close($ch);
        }        return $file_contents;
    }    /**
     * @desc 得到目前物流单号可能存在的快递公司
     * @param string $order_no
     * @return mixed
     */
Copier après la connexion
 public function getOrder($order_no=&#39;&#39;){
        $result = $this->getContent("http://www.kuaidi100.com/autonumber/autoComNum?text=".$order_no);
        $data = json_decode($result,true);        return $data;
    }    /**
     * @desc http://www.kuaidi100.com/query?type=zhongtong&postid=453371918456&id=1&valicode=&temp=0.40349807080624434
     * @desc 返回的数据结果参考官方文档:https://www.kuaidi100.com/openapi/api_post.shtml
     * @desc 直接调用该方法,传入物流单号即可查询物流信息
     * @param string $order_no
     * @return bool|mixed
     */
    public function getLogisticsInfo($order_no=&#39;&#39;){
        $result = $this->getOrder($order_no);
        $auto_arr = $result[&#39;auto&#39;];        if(count($auto_arr)>0){            foreach ($auto_arr as $key => $value){
                $temp = $this->randFloat();
                $comCode = $value[&#39;comCode&#39;];
                $url = "http://www.kuaidi100.com/query?type=$comCode&postid=$order_no&id=1&valicode=&temp=$temp";// $temp 随机数,防止缓存
                $json = $this->getContent($url);
                $data = json_decode($json,true);                if($data[&#39;message&#39;]==&#39;ok&#39;){                    return $data;
                }
            }
        }        return false;
    }    /**
     * 生成0~1随机小数
     * @param Int  $min
     * @param Int  $max
     * @return Float
     */
    function randFloat($min=0, $max=1){        return $min + mt_rand()/mt_getrandmax() * ($max-$min);
    }
}
Copier après la connexion

Cet article présente la méthode de classe de requête php express Pour plus de connaissances connexes, veuillez faire attention au site Web chinois de php.

Recommandations associées :

php envoie des données XML via curl et obtient des données XML

PHP génère parfaitement Word document, vous pouvez ajouter des éléments HTML

Explication détaillée du principe et de l'utilisation de la mise en cache ThinkPhp

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal