PHPでニュースの見出しをクエリする方法

藏色散人
リリース: 2023-03-17 07:00:02
オリジナル
1263 人が閲覧しました

php でニュース ヘッドラインをクエリする方法: 1. 無料のニュース ヘッドライン インターフェイスを開きます; 2. ニュース ヘッドライン インターフェイスの URL とパラメーターをリクエストします; 3. インターフェイス リクエストを開始し、インターフェイスを処理して結果を返します; 4 .「function juheHttpRequest( $url, $params = false, $ispost = 0){...}」を通じてネットワーク リクエストを開始します。

PHPでニュースの見出しをクエリする方法

このチュートリアルの動作環境: Windows 7 システム、PHP バージョン 8.1、Dell G3 コンピューター。

PHP でニュースの見出しをクエリするにはどうすればよいですか?

PHP に基づく無料のニュース ヘッドライン インターフェイス クエリ

1. オープン インターフェイス

ニュース ヘッドライン インターフェイス サービスで使用される集約データによって提供される無料のインターフェイスは、 1日100回利用無料通話。

https://www.juhe.cn/docs/api/id/235?s=cpphpcn を通じて登録およびアクティブ化できます。

2. ニュース ヘッドライン リスト クエリ

<?php
/**
 * 聚合新闻头条列表发起请求-PHP代码
 * 功能:最新新闻头条,各类社会、国内、国际、体育、娱乐、科技等资讯。
 */
// 请求的接口URL
$apiUrl = &#39;http://v.juhe.cn/toutiao/index&#39;;
// 请求参数
$params = [
    &#39;type&#39; => &#39;top&#39;, // 新闻类型
    &#39;key&#39; => &#39;xxxxxx&#39;, // 接口调用key,通过聚合平台申请开通
];
$paramsString = http_build_query($params);
// 发起接口请求
$response = juheHttpRequest($apiUrl, $paramsString, 1);
// 处理接口返回结果,根据自身业务逻辑修改处理
$paramstring = http_build_query($params);
$content = juheHttpRequest($apiUrl, $paramstring, 1);
$result = json_decode($content, true);
if ($result) {
    if ($result[&#39;error_code&#39;] == 0) {
        // 请求成功,根据自身业务逻辑修改处理
        $news = $result[&#39;result&#39;][&#39;data&#39;];
        if ($news) {
            foreach ($news as $key => $newsInfo) {
                // 更多字段,请参考官方接口文档
                echo $newsInfo[&#39;title&#39;].PHP_EOL;
            }
        }
    } else {
        // 请求异常,根据自身业务逻辑修改处理
        echo "{$result[&#39;error_code&#39;]}:{$result[&#39;reason&#39;]}" . PHP_EOL;
    }
} else {
    //可能网络异常等问题请求失败,根据自身业务逻辑修改处理
    echo "请求失败";
}
ログイン後にコピー

3. ニュース ヘッドライン詳細クエリ

<?php
/**
 * 聚合新闻头条 - 新闻详情查询
 * 功能:最新新闻头条,各类社会、国内、国际、体育、娱乐、科技等资讯。
 */
// 请求的接口URL
$apiUrl = &#39;http://v.juhe.cn/toutiao/content&#39;;
// 请求参数
$params = [
    &#39;uniquekey&#39; => &#39;f9b3e37d91b452e182eda11db61e9c99&#39;, // 新闻ID
    &#39;key&#39; => &#39;xxxxxx&#39;, // 接口调用key,通过聚合平台申请开通
];
$paramsString = http_build_query($params);
// 发起接口请求
$response = juheHttpRequest($apiUrl, $paramsString, 1);
// 处理接口返回结果,根据自身业务逻辑修改处理
$paramstring = http_build_query($params);
$content = juheHttpRequest($apiUrl, $paramstring, 1);
$result = json_decode($content, true);
if ($result) {
    if ($result[&#39;error_code&#39;] == 0) {
        // 请求成功,根据自身业务逻辑修改处理
        $newsContent = $result[&#39;result&#39;][&#39;content&#39;];
        echo $newsContent;
    } else {
        // 请求异常,根据自身业务逻辑修改处理
        echo "{$result[&#39;error_code&#39;]}:{$result[&#39;reason&#39;]}" . PHP_EOL;
    }
} else {
    //可能网络异常等问题请求失败,根据自身业务逻辑修改处理
    echo "请求失败";
}
ログイン後にコピー

4. 一般的な HTTP ネットワーク リクエスト関数

/**
 * 发起网络请求函数
 * @param string $url 请求的URL
 * @param bool $params 请求的参数内容
 * @param int $ispost 是否POST请求
 * @return bool|string 返回内容
 */
function juheHttpRequest($url, $params = false, $ispost = 0)
{
    $httpInfo = [];
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
    curl_setopt($ch, CURLOPT_USERAGENT, &#39;JUHE API&#39;);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3);
    curl_setopt($ch, CURLOPT_TIMEOUT, 12);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    if ($ispost) {
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
        curl_setopt($ch, CURLOPT_URL, $url);
    } else {
        if ($params) {
            curl_setopt($ch, CURLOPT_URL, $url . &#39;?&#39; . $params);
        } else {
            curl_setopt($ch, CURLOPT_URL, $url);
        }
    }
    $response = curl_exec($ch);
    if ($response === FALSE) {
        // echo "cURL Error: ".curl_error($ch);
        return false;
    }
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    $httpInfo = array_merge($httpInfo, curl_getinfo($ch));
    curl_close($ch);
    return $response;
}
ログイン後にコピー

推奨される学習: " PHP ビデオ チュートリアル >>

以上がPHPでニュースの見出しをクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!