微信开发自动回复功能,消息类型判断失败,PHP语言
编写自动回复,针对用户不同消息类型做出回复,程序怎么调都有问题额。
问题:无论我发送什么消息,文本也好,图片也好,语音也好,都只回复“我只接收图片消息”,也就是说程序似乎不执行
if(strtolower($msgType) =="image"){..............}这一判断.
求各位大神看一下~~~~
<?php// wechat php //define your token定义接口define("TOKEN", "weixin");$wechatObj = new wechatCallbackapiTest();$wechatObj ->GetImageMsg();//这个要调用自动回复消息!!$wechatObj->valid();class wechatCallbackapiTest{//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>接口验证>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> public function valid() { $echoStr = $_GET["echostr"]; //valid signature , option if($this->checkSignature()){ header('content-type:text');//在微信样本代码上添加了如此语句,因而接口接成功 echo $echoStr; exit; } } private function checkSignature() { // you must define TOKEN by yourself if (!defined("TOKEN")) { throw new Exception('TOKEN is not defined!'); } $signature = $_GET["signature"]; $timestamp = $_GET["timestamp"]; $nonce = $_GET["nonce"]; $token = TOKEN; $tmpArr = array($token, $timestamp, $nonce); // use SORT_STRING rule sort($tmpArr, SORT_STRING); $tmpStr = implode( $tmpArr ); $tmpStr = sha1( $tmpStr ); if( $tmpStr == $signature ){ return true; }else{ return false; } }//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>自动回复消息>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> public function GetImageMsg()//自动回复消息 { $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; if (!empty($postStr)) { libxml_disable_entity_loader(true); $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); $fromUsername = $postObj->FromUserName; $toUsername = $postObj->ToUserName; $msgType=$postObj->$MsgType; $picUrl=trim($postObj->PicUrl); $mediaId=trim($postObj->MediaId); $time = time(); $textTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[%s]]></MsgType> <Content><![CDATA[%s]]></Content> <FuncFlag>0</FuncFlag> </xml>"; if(strtolower($msgType) =="image") { if(!empty($picUrl)){ $msgType ="text"; $contentStr = "图片链接:".$picUrl."\n"; $contentStr =$contentStr."媒体ID:".$mediaId; }else{ $contentStr = "请发送图片哦"; } }else{ $msgType ="text"; $contentStr = "我只接收图片消息"; } $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr); echo $resultStr; } else { echo ""; exit; } } }?>
回复讨论(解决方案)
可能65行应该是$msgType=$postObj->MsgType;这个吧
多了个$???
可能65行应该是$msgType=$postObj->MsgType;这个吧
多了个$???

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Dalam pembangunan bahasa PHP, ralat pengepala permintaan biasanya disebabkan oleh beberapa masalah dalam permintaan HTTP. Isu ini mungkin termasuk pengepala permintaan yang tidak sah, badan permintaan yang tiada dan format pengekodan yang tidak dikenali. Mengendalikan ralat pengepala permintaan ini dengan betul adalah kunci untuk memastikan kestabilan dan keselamatan aplikasi. Dalam artikel ini, kami akan membincangkan beberapa amalan terbaik untuk mengendalikan ralat pengepala permintaan PHP untuk membantu anda membina aplikasi yang lebih dipercayai dan selamat. Menyemak kaedah permintaan Protokol HTTP menentukan satu set kaedah permintaan yang tersedia (cth. GET, POS

PHP ialah bahasa pengaturcaraan yang sangat popular yang membolehkan pembangun mencipta pelbagai jenis aplikasi. Walau bagaimanapun, kadangkala semasa menulis kod PHP, kita perlu mengendalikan dan mengesahkan aksara. Di sinilah sambungan Ctype PHP berguna. Artikel ini akan memperkenalkan cara menggunakan sambungan Ctype PHP. Apakah sambungan Ctype? Sambungan Ctype untuk PHP ialah alat yang sangat berguna yang menyediakan pelbagai fungsi untuk mengesahkan jenis aksara dalam rentetan. Fungsi ini termasuk isalnum, ialah

Dengan perkembangan teknologi Internet, semakin banyak laman web dan aplikasi dibangunkan menggunakan bahasa PHP. Namun, isu keselamatan turut timbul. Salah satu isu keselamatan biasa ialah kelemahan laluan lintasan. Dalam artikel ini, kami akan meneroka cara untuk mengelakkan kelemahan laluan traversal dalam pembangunan bahasa PHP untuk memastikan keselamatan aplikasi. Apakah kelemahan laluan laluan? Kerentanan laluan laluan (PathTraversal) ialah kelemahan web biasa yang membenarkan penyerang mengakses pelayan web tanpa kebenaran.

Dalam pengaturcaraan PHP, Behat ialah alat yang sangat berguna yang boleh membantu pengaturcara lebih memahami keperluan perniagaan semasa proses pembangunan dan memastikan kualiti kod. Dalam artikel ini, kami akan memperkenalkan cara menggunakan Behat dalam pengaturcaraan PHP. 1. Apakah Behat? Behat ialah rangka kerja pembangunan dipacu tingkah laku (BDD) yang menggabungkan kod PHP melalui penerangan bahasa (kes penggunaan yang ditulis dalam bahasa Gherkin), dengan itu membolehkan kod dan keperluan perniagaan berfungsi bersama. Gunakan Behat untuk melakukan

Dalam pembangunan moden, ujian unit telah menjadi langkah yang perlu. Ia boleh digunakan untuk memastikan kod anda berkelakuan seperti yang diharapkan dan pepijat boleh diperbaiki pada bila-bila masa. Dalam pembangunan PHP, Phpt ialah alat ujian unit yang sangat popular, yang sangat mudah untuk menulis dan melaksanakan ujian unit. Dalam artikel ini, kami akan meneroka cara menggunakan Phpt untuk ujian unit. 1. Apa itu PhptPhpt ialah alat ujian unit yang ringkas tetapi berkuasa, yang merupakan sebahagian daripada ujian PHP. Kes ujian Phpt ialah satu siri coretan kod sumber PHP yang

Dalam pembangunan bahasa PHP, selalunya perlu untuk menghuraikan data JSON untuk pemprosesan dan operasi data seterusnya. Walau bagaimanapun, apabila menghuraikan JSON, mudah untuk menghadapi pelbagai ralat dan masalah. Artikel ini akan memperkenalkan ralat biasa dan kaedah pemprosesan untuk membantu pembangun PHP memproses data JSON dengan lebih baik. 1. Ralat format JSON Ralat yang paling biasa ialah format JSON tidak betul. Data JSON mesti mematuhi spesifikasi JSON, iaitu, data mestilah koleksi pasangan nilai kunci dan menggunakan kurungan kerinting ({}) dan kurungan segi empat sama ([]) untuk mengandungi data.

Kontrak Pintar ialah program transaksi automatik berdasarkan rantaian blok yang boleh melaksanakan, mengesahkan dan melaksanakan transaksi secara automatik. Kontrak pintar boleh mengurangkan campur tangan manusia dalam urus niaga dan meningkatkan keselamatan dan kecekapan transaksi. Kontrak pintar dilaksanakan sedikit berbeza dalam blok blok yang berbeza. Artikel ini akan memperkenalkan cara melaksanakan kontrak pintar dalam PHP. PHP ialah bahasa pengaturcaraan yang digunakan secara meluas, terutamanya sesuai untuk pembangunan web. PHP mempunyai ekosistem sumber terbuka yang matang dan banyak rangka kerja dan perpustakaan yang boleh dipercayai. wujud

Bahasa PHP menyokong 3 gaya ulasan: 1. Gaya C, menggunakan simbol "//" dan sintaks "//kandungan komen" 2. Gaya bahasa C, menggunakan simbol "/* */" dan sintaks "/* kandungan ulasan*" /"; 3. Gaya Shell (gaya Perl), menggunakan simbol "#" dan sintaks "#komen".
