Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
meibuyu-rpc
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
without authentication
meibuyu-rpc
Commits
18c33bbc
Commit
18c33bbc
authored
Nov 23, 2020
by
王源
🎧
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修复下载远程图片bug
parent
cafc6580
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
24 additions
and
2 deletions
+24
-2
Drawer.php
src/Tools/Drawer.php
+24
-2
No files found.
src/Tools/Drawer.php
View file @
18c33bbc
...
@@ -49,7 +49,7 @@ class Drawer
...
@@ -49,7 +49,7 @@ class Drawer
$url
=
$this
->
parseUrl
(
$url
);
$url
=
$this
->
parseUrl
(
$url
);
// excel画图中下载图片时对图片名做urlencode处理,防止中文名不能正常画图片的bug
// excel画图中下载图片时对图片名做urlencode处理,防止中文名不能正常画图片的bug
$filename
=
trim
(
pathinfo
(
$url
,
PATHINFO_FILENAME
));
$filename
=
trim
(
pathinfo
(
$url
,
PATHINFO_FILENAME
));
$ext
=
strtolower
(
pathinfo
(
$url
,
PATHINFO_EXTENSION
)
);
$ext
=
$this
->
getImgExt
(
$url
);
$filename
=
"
$filename
.
$ext
"
;
$filename
=
"
$filename
.
$ext
"
;
$path
=
$this
->
rootPath
.
'/download/images/'
.
(
$path
?:
$this
->
savePath
);
$path
=
$this
->
rootPath
.
'/download/images/'
.
(
$path
?:
$this
->
savePath
);
...
@@ -79,6 +79,8 @@ class Drawer
...
@@ -79,6 +79,8 @@ class Drawer
$url
=
rawurlencode
(
$url
);
$url
=
rawurlencode
(
$url
);
$url
=
str_replace
(
"%3A"
,
":"
,
$url
);
$url
=
str_replace
(
"%3A"
,
":"
,
$url
);
$url
=
str_replace
(
"%2F"
,
"/"
,
$url
);
$url
=
str_replace
(
"%2F"
,
"/"
,
$url
);
$url
=
str_replace
(
"%3F"
,
"?"
,
$url
);
$url
=
str_replace
(
"%3D"
,
"="
,
$url
);
}
}
return
$url
;
return
$url
;
}
}
...
@@ -95,7 +97,8 @@ class Drawer
...
@@ -95,7 +97,8 @@ class Drawer
$imgPathInfo
=
pathinfo
(
$imgPath
);
$imgPathInfo
=
pathinfo
(
$imgPath
);
$filename
=
$imgPathInfo
[
'filename'
];
// 图片名称
$filename
=
$imgPathInfo
[
'filename'
];
// 图片名称
$ext
=
$imgPathInfo
[
'extension'
];
// 图片扩展名
$ext
=
$this
->
getImgExt
(
$imgPath
);
[
$img_w
,
$img_h
]
=
getimagesize
(
$imgPath
);
// 图片大小
[
$img_w
,
$img_h
]
=
getimagesize
(
$imgPath
);
// 图片大小
$savePath
=
$this
->
rootPath
.
'/download/board/'
.
$this
->
savePath
;
$savePath
=
$this
->
rootPath
.
'/download/board/'
.
$this
->
savePath
;
...
@@ -239,4 +242,23 @@ class Drawer
...
@@ -239,4 +242,23 @@ class Drawer
$this
->
savePath
=
$path
;
$this
->
savePath
=
$path
;
}
}
/**
* 获取图片扩展名
* @param $path
* @return bool|mixed|string
* @author Zero
*/
public
function
getImgExt
(
$path
)
{
$ext
=
false
;
$info
=
getimagesize
(
$path
);
if
(
isset
(
$info
[
'mime'
])
&&
$info
[
'mime'
])
{
$ext
=
explode
(
'/'
,
$info
[
'mime'
])[
1
];
}
else
{
$ext
=
strtolower
(
pathinfo
(
$path
,
PATHINFO_EXTENSION
));
$ext
=
explode
(
'?'
,
$ext
)[
0
]
??
$ext
;
}
return
$ext
;
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment