You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Nutgram中获取文件的扩展名及文件名?

Nutgram获取文件的扩展名与文件名方法

Telegram Bot API 返回的 getFile 结果里,file_path 字段本身就包含带扩展名的完整文件名,直接用 PHP 路径处理函数就能解析出你要的信息:

具体实现步骤

  • 从 $file 对象中取出 file_path 属性
  • 用 pathinfo() 函数解析该路径,提取文件名、扩展名等信息
  • 下载文件时可结合这些信息自定义保存的文件名

示例代码

$file = $bot->getFile($fileId);
$filePath = $file->file_path; // 获取Telegram返回的完整文件路径

// 解析路径,拆分出文件名和扩展名
$pathInfo = pathinfo($filePath);
$originalFullName = $pathInfo['basename']; // 带扩展名的原文件名,比如"document.pdf"
$fileExt = $pathInfo['extension']; // 文件扩展名,比如"pdf"
$originalNameWithoutExt = $pathInfo['filename']; // 不带扩展名的原文件名,比如"document"

// 自定义下载后的文件名(比如用uniqid生成唯一名称+原扩展名)
$uniqueFileName = uniqid() . '.' . $fileExt;
// 下载文件到reports目录,使用自定义文件名
$bot->downloadFile($file, "reports/{$uniqueFileName}");

如果解析 file_path 时遇到问题,先确认 getFile 调用是否成功,以及Telegram是否返回了有效的 file_path(少数情况下可能需要等待Telegram生成文件路径,但绝大多数场景下能直接获取)

内容的提问来源于stack exchange,提问作者Amanda

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 20:14:55