在 php 中将 svg 推送到浏览器
Push svg to the browser in php
使用 png,
header('Content-Type: image/png');
imagepng(imagecreatefrompng($pathToPng));
使用 svg,
header('Content-Type: image/svg+xml');
// ???
由于很难从社区获得帮助,我做了一个临时的工作脚本。希望对其他人有帮助。
$imgInfo = pathinfo($_GET['img']);
$imgRelativePath = $imgInfo['dirname'];
$imgName = urlencode($imgInfo['filename']);
$imgExtension = str_replace(' ', '+', $imgInfo['extension']);
switch ($imgExtension) {
case 'svg+xml':
set_header('image/svg+xml');
break;
case 'png':
set_header('image/png');
break;
}
$imgPath = sprintf(
'%s/%s.%s',
$imgRelativePath,
$imgName,
$imgExtension);
if ($file = fopen($imgPath,'r')) {
while (!feof($file)) {
print fread($file, 2048);
}
}
function set_header ($contentType) {
header("Content-Type: $contentType");
}
使用 png,
header('Content-Type: image/png');
imagepng(imagecreatefrompng($pathToPng));
使用 svg,
header('Content-Type: image/svg+xml');
// ???
由于很难从社区获得帮助,我做了一个临时的工作脚本。希望对其他人有帮助。
$imgInfo = pathinfo($_GET['img']);
$imgRelativePath = $imgInfo['dirname'];
$imgName = urlencode($imgInfo['filename']);
$imgExtension = str_replace(' ', '+', $imgInfo['extension']);
switch ($imgExtension) {
case 'svg+xml':
set_header('image/svg+xml');
break;
case 'png':
set_header('image/png');
break;
}
$imgPath = sprintf(
'%s/%s.%s',
$imgRelativePath,
$imgName,
$imgExtension);
if ($file = fopen($imgPath,'r')) {
while (!feof($file)) {
print fread($file, 2048);
}
}
function set_header ($contentType) {
header("Content-Type: $contentType");
}