php实现钉钉机器人推送消息和图片内容(完整版)
<?php
// 钉钉机器人Webhook地址
$webhook = 'https://oapi.dingtalk.com/robot/send?access_token=ACCESS_TOKEN';
// 要发送的文本消息
$textMessage = "这是一条测试文本消息。";
// 要发送的图片消息,图片必须是在本地的绝对路径
$picturePath = '/path/to/your/picture.png';
// 发送文本消息的函数
function sendTextMessage($webhook, $message) {
$data = json_encode(
array(
'msgtype' => 'text',
'text' => array('content' => $message)
)
);
$result = https_request($webhook, $data);
return $result;
}
// 发送图片消息的函数
function sendPictureMessage($webhook, $picturePath) {
if (!file_exists($picturePath)) {
return "图片文件不存在";
}
$data = array('pic' => new CURLFile(realpath($picturePath)));
$result = https_request($webhook, $data);
return $result;
}
// 发送HTTP请求的函数
function https_request($url, $data = null) {
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
if (!empty($data)) {
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
}
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($curl);
curl_close($curl);
return $output;
}
// 调用函数发送消息
$textResult = sendTextMessage($webhook, $textMessage);
$pictureResult = sendPictureMessage($webhook, $picturePath);
// 打印结果
echo "文本消息结果:" . $textResult;
echo "图片消息结果:" . $pictureResult;
?>
这段代码提供了一个简洁的方法来发送钉钉机器人文本消息和图片消息。首先定义了钉钉机器人的Webhook地址和要发送的消息内容。然后创建了两个函数sendTextMessage
和sendPictureMessage
来分别发送文本和图片消息。https_request
函数负责发送HTTP请求。最后,通过调用这些函数并打印结果来演示如何使用这些功能。
评论已关闭