大部分图片还是显示http开头,并没有保存在本地,图片地址也未修改;
请教各路大牛~
ueditor百度编辑器远程抓取图片,下载到本地并更改路径(php版)
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
关注本答案由爪磕协同GPT-4o回答,希望对您有所帮助 解决问题望采纳!
要在使用UEditor进行远程图片抓取并下载到本地目录,同时更新图片路径的过程中,确保所有图片都能正确下载并替换路径,需按照以下步骤进行配置和代码编写:
步骤一:配置UEditor
首先,确保在
ueditor.config.js中启用了远程图片抓取功能:// ueditor.config.js window.UEDITOR_CONFIG = { // 其他配置项... catchRemoteImageEnable: true, catcherActionName: "catchimage", // 执行抓取远程图片的action名称 catcherUrlPrefix: "", // 图片访问路径前缀 catcherFieldName: "source", // 远程图片抓取的字段名称 catcherPathFormat: "/upload/image/{yyyy}{mm}{dd}/{time}{rand:6}", // 本地保存路径 catcherLocalDomain: ["localhost", "127.0.0.1"], // 允许的本地域名 // 其他配置项... };步骤二:配置服务器端PHP代码
在UEditor的PHP配置文件中,确保正确配置了抓取远程图片的路径和其他相关参数:
// config.json { /* 抓取远程图片配置 */ "catcherActionName": "catchimage", /* 执行抓取远程图片的action名称 */ "catcherFieldName": "source", /* 提交的图片列表表单名称 */ "catcherPathFormat": "/upload/image/{yyyy}{mm}{dd}/{time}{rand:6}", /* 上传保存路径,可以自定义保存路径和文件名格式 */ "catcherUrlPrefix": "", /* 图片访问路径前缀 */ "catcherMaxSize": 2048000, /* 上传大小限制,单位B */ "catcherAllowFiles": [".png", ".jpg", ".jpeg", ".gif", ".bmp"], /* 抓取图片格式显示 */ // 其他配置项... }步骤三:实现抓取和保存图片的PHP代码
在
php/controller.php中实现抓取并保存图片到本地的功能。以下是一个示例:<?php switch ($action) { case 'catchimage': $result = include("action_crawler.php"); break; // 其他action处理... } // 输出结果 if (isset($callback)) { if (preg_match("/^[\w_]+$/", $callback)) { echo htmlspecialchars($callback) . '(' . $result . ')'; } else { echo json_encode(array( 'state' => 'callback参数不合法' )); } } else { echo $result; } ?>解决 无用评论 打赏 举报