Comment pousser les résultats du jeu NBA en PHP : 1. Créez un fichier PHP et définissez le fuseau horaire ; 2. Utilisez PHP pour lancer une requête à l'API du jeu NBA fournie par les données agrégées ; interface ; 4. Extraire les jeux NBA qui m'intéressent Résultat ; 5. Transférer les informations de résultat vers le terminal que j'ai besoin de recevoir via le service push cloud d'agrégation.
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur DELL G3
PHP réalise une diffusion en temps réel des résultats des matchs de la NBA
Pour ceux qui ne peuvent généralement pas regarder la diffusion en direct de la NBA, mais je veux savoir le plus tôt possible s'ils aiment les résultats du match des Lakers. Avec vos petites mains, vous pouvez facilement surveiller les résultats du jeu des Lakers et les envoyer sur votre WeChat, votre e-mail ou DingTalk.
Principe
Utiliser PHP pour lancer une requête à l'API d'événement NBA fournie par les données d'agrégation, revenir à JSON via l'interface d'analyse, extraire les résultats du jeu des Lakers que je suis et transmettre les informations de résultat à ce que je besoin de recevoir via le terminal de service push cloud d’agrégation.
Services utilisés
Interface de requête d'événement NBA : https://www.juhe.cn/docs/api/id/92?s=cpphpcn
Service de message push : tui.juhe.cn
Effet de message
Si les résultats du jeu que vous suivez sont surveillés, vous recevrez le total configuration cloud push Le terminal recevra une notification similaire à la suivante :
DingTalk Robot :
Compte public WeChat :
E-mail :
Code PHP
<?php/** * PHP实现NBA赛事结果通知即时推送 *///设置时区if (PHP_VERSION >= '5.1') date_default_timezone_set('PRC'); $nba = new Nba(); $nba->run();class Nba{ // 关注的球队列表 // private $teams = ['洛杉矶湖人', '布鲁克林篮网']; private $teams = ['洛杉矶湖人']; // 开始执行 public function run() { echo "开始监测NBA今日赛程 - ". date("Y-m-d H:i:s") . PHP_EOL; // 查询今日NBA比赛清单 $todayMatchsResult = $this->getMatchResult(); if ($todayMatchsResult['code'] == '1') { // 解析比赛结果,提取需要推送的比赛结果 $parseMatchsResult = $this->parseMatchs($todayMatchsResult['matchs']); if ($parseMatchsResult) { $this->pushMsg($parseMatchsResult); } else { echo "暂无比赛结果需要推送"; } } else { // 查询失败 echo $todayMatchsResult['msg']; } } /** * 将需要推送的比赛结果, 通过 聚合云推 推送至邮件、钉钉、微信等 * 聚合云推官网: https://tui.juhe.cn/?f=nba * @param null $msgs */ private function pushMsg($msgs = null) { // 记录已经推送过的msg文件 $logFile = dirname(__FILE__).DIRECTORY_SEPARATOR."notify_log.txt"; $logContent = file_get_contents($logFile); $logList = explode("\n", $logContent); // 在聚合云推个人中心获取到的token $token = "cd513bd*******b7261e566a3"; // 在聚合云推创建的ServiceID $service_id = "1O***Ho"; // 自定义标题 $title = "NBA赛事结果"; $doc_type = "text"; foreach ($msgs as $m) { // 消息内容MD5,简单记录本地文件,用于判断是否已经推送,避免重复 (当然也可以使用数据库、缓存等手段) $mHash = md5($m); if (in_array($mHash, $logList)) { // 重复推送 echo "{$m},推送结果:999 - 已经推送过,无需重复推送" . PHP_EOL; } else { // 开始推送 $params = [ 'token' => $token, 'service_id' => $service_id, 'title' => $title, 'doc_type' => $doc_type, 'content' => $m ]; $pushResContent = $this->juheHttpRequest('https://tui.juhe.cn/api/plus/pushApi', http_build_query($params), 1); $pushRes = json_decode($pushResContent, true); echo "{$m},推送结果:{$pushRes['code']} - {$pushRes['reason']}" . PHP_EOL; // 记录log file_put_contents($logFile, $mHash, FILE_APPEND); } } } /** * 解析NBA比赛结果,提取关注的球队比赛结果 * @param null $matchs */ private function parseMatchs($matchs = null) { $matchText = null; if ($matchs) { foreach ($matchs as $m) { if (in_array($m['team1'], $this->teams) || in_array($m['team2'], $this->teams)) { // 有关注的球队且完赛 if ($m['status'] == '3') { // 整合比赛球队和结果信息 $matchText[] = "{$m['team1']} {$m['team1_score']} - {$m['team2_score']} {$m['team2']}"; } } } } return $matchText; } /** * 查询NBA今日比赛状态 * 通过聚合提供的接口,接口详情:https://www.juhe.cn/docs/api/id/92?f=nba */ private function getMatchResult() { // NBA赛事接口地址 $apiUrl = 'http://apis.juhe.cn/fapig/nba/query'; // 接口地址请求Key, 自行替换 $apiKey = '69e76b5*********4b87690c8'; $params = [ 'key' => $apiKey ]; $requestContent = $this->juheHttpRequest($apiUrl, http_build_query($params)); $requestResult = json_decode($requestContent, true); if ($requestResult) { $errorCode = $requestResult['error_code']; if ($errorCode == 0) { // 请求成功 $matchs = isset($requestResult['result']['matchs']) ? $requestResult['result']['matchs'] : null; if ($matchs) { $todayMatchs = null; foreach ($matchs as $key => $match) { $matchDate = $match['date']; if ($matchDate == date("Y-m-d")) { // 今日比赛列表 $todayMatchs = $match['list']; break; } } // 返回比赛列表 return ['code' => '1', 'msg' => '请求成功', 'matchs' => $todayMatchs]; } else { // 无比赛记录 return ['code' => '1', 'msg' => '请求成功', 'matchs' => null]; } } else { // 请求异常 return ['code' => '2', 'msg' => '请求异常:' . $errorCode, 'matchs' => null]; } } else { // 请求异常,可能网络异常 return ['code' => '2', 'msg' => '请求异常:网络异常', 'matchs' => null]; } } /** * 发起网络请求函数 * @param string $url 请求的URL * @param bool $params 请求的参数内容 * @param int $ispost 是否POST请求 * @return bool|string 返回内容 */ private 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, 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36'); 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 . '?' . $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; } }
Configuration des tâches planifiées
Vous pouvez effectuer une surveillance du code régulièrement (chaque minute) via crontab et d'autres méthodes.
Par exemple, méthode de configuration de crontab :
Entrez crontab -e sur la ligne de commande pour entrer dans la configuration de la tâche planifiée
# 每分钟执行一次*/1 * * * * /usr/bin/php nba.php >> /data/log.txt
cat /data/log.txt
洛杉矶湖人 102 - 109 密尔沃基雄鹿,推送结果:200 - success 开始监测NBA今日赛程 - 2021-11-18 18:41:00洛杉矶湖人 102 - 109 密尔沃基雄鹿,推送结果:999 - 已经推送过,无需重复推送 开始监测NBA今日赛程 - 2021-11-18 18:42:01洛杉矶湖人 102 - 109 密尔沃基雄鹿,推送结果:999 - 已经推送过,无需重复推送 开始监测NBA今日赛程 - 2021-11-18 18:42:39洛杉矶湖人 102 - 109 密尔沃基雄鹿,推送结果:999 - 已经推送过,无需重复推送 开始监测NBA今日赛程 - 2021-11-18 18:43:00洛杉矶湖人 102 - 109 密尔沃基雄鹿,推送结果:999 - 已经推送过,无需重复推送
Apprentissage recommandé : "Tutoriel vidéo PHP"
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!

PHP est largement utilisé dans le commerce électronique, les systèmes de gestion de contenu et le développement d'API. 1) E-commerce: Utilisé pour la fonction de panier et le traitement des paiements. 2) Système de gestion du contenu: utilisé pour la génération de contenu dynamique et la gestion des utilisateurs. 3) Développement des API: Utilisé pour le développement de l'API RESTful et la sécurité de l'API. Grâce à l'optimisation des performances et aux meilleures pratiques, l'efficacité et la maintenabilité des applications PHP sont améliorées.

PHP facilite la création de contenu Web interactif. 1) Générez dynamiquement du contenu en intégrant HTML et affichez-les en temps réel en fonction des données d'entrée ou de base de données utilisateur. 2) Traitez la soumission du formulaire et générez une sortie dynamique pour garantir que HTMLSpecialChars est utilisé pour empêcher les XS. 3) Utilisez MySQL pour créer un système d'enregistrement des utilisateurs, et utilisez des instructions Password_hash et du prétraitement pour améliorer la sécurité. La maîtrise de ces techniques améliorera l'efficacité du développement Web.

PHP et Python ont chacun leurs propres avantages et choisissent en fonction des exigences du projet. 1.Php convient au développement Web, en particulier pour le développement rapide et la maintenance des sites Web. 2. Python convient à la science des données, à l'apprentissage automatique et à l'intelligence artificielle, avec syntaxe concise et adaptée aux débutants.

PHP est toujours dynamique et occupe toujours une position importante dans le domaine de la programmation moderne. 1) La simplicité de PHP et le soutien communautaire puissant le rendent largement utilisé dans le développement Web; 2) sa flexibilité et sa stabilité le rendent exceptionnelle dans la gestion des formulaires Web, des opérations de base de données et du traitement de fichiers; 3) PHP évolue et optimise constamment, adapté aux débutants et aux développeurs expérimentés.

Le PHP reste important dans le développement Web moderne, en particulier dans la gestion de contenu et les plateformes de commerce électronique. 1) PHP a un écosystème riche et un fort soutien-cadre, tels que Laravel et Symfony. 2) L'optimisation des performances peut être obtenue via Opcache et Nginx. 3) PHP8.0 introduit le compilateur JIT pour améliorer les performances. 4) Les applications natives dans le cloud sont déployées via Docker et Kubernetes pour améliorer la flexibilité et l'évolutivité.

PHP convient au développement Web, en particulier dans le développement rapide et le traitement du contenu dynamique, mais n'est pas bon dans les applications de la science des données et de l'entreprise. Par rapport à Python, PHP présente plus d'avantages dans le développement Web, mais n'est pas aussi bon que Python dans le domaine de la science des données; Par rapport à Java, PHP fonctionne moins bien dans les applications au niveau de l'entreprise, mais est plus flexible dans le développement Web; Par rapport à JavaScript, PHP est plus concis dans le développement back-end, mais n'est pas aussi bon que JavaScript dans le développement frontal.

PHP et Python ont chacun leurs propres avantages et conviennent à différents scénarios. 1.PHP convient au développement Web et fournit des serveurs Web intégrés et des bibliothèques de fonctions riches. 2. Python convient à la science des données et à l'apprentissage automatique, avec une syntaxe concise et une bibliothèque standard puissante. Lors du choix, il doit être décidé en fonction des exigences du projet.

PHP est un langage de script largement utilisé du côté du serveur, particulièrement adapté au développement Web. 1.Php peut intégrer HTML, traiter les demandes et réponses HTTP et prend en charge une variété de bases de données. 2.PHP est utilisé pour générer du contenu Web dynamique, des données de formulaire de traitement, des bases de données d'accès, etc., avec un support communautaire solide et des ressources open source. 3. PHP est une langue interprétée, et le processus d'exécution comprend l'analyse lexicale, l'analyse grammaticale, la compilation et l'exécution. 4.PHP peut être combiné avec MySQL pour les applications avancées telles que les systèmes d'enregistrement des utilisateurs. 5. Lors du débogage de PHP, vous pouvez utiliser des fonctions telles que error_reportting () et var_dump (). 6. Optimiser le code PHP pour utiliser les mécanismes de mise en cache, optimiser les requêtes de base de données et utiliser des fonctions intégrées. 7


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

Adaptateur de serveur SAP NetWeaver pour Eclipse
Intégrez Eclipse au serveur d'applications SAP NetWeaver.

Télécharger la version Mac de l'éditeur Atom
L'éditeur open source le plus populaire

ZendStudio 13.5.1 Mac
Puissant environnement de développement intégré PHP

VSCode Windows 64 bits Télécharger
Un éditeur IDE gratuit et puissant lancé par Microsoft

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