我有一个包含数百篇文章的手工编码网站。我当前的主题是蓝色背景。当然,图像因此具有蓝色背景。为了将来对可打印版本的支持,我(从第一天开始)保留了两个版本的图像,后一个版本具有白色背景。这些扩展名之前有“_print”。
当然,创建可打印版本的最佳方法是使用不同的 CSS,并在各自的 CSS 中通过“display:none”隐藏标题和侧边栏。
有什么方法可以使用 PHP 在可打印版本的“.jpg”之前自动添加“_print”?或者还有其他方法吗?
您可以使用 PHP 或 Javascript 来执行此操作。
在 PHP 中,您可以只传递一个类似 ?print=true 的参数,然后编写一个小辅助函数来获取适当的图像 url。
<?php
function getImageUrl(imageUrl) {
if(isset($_GET["print"])) {
return preg_replace('\.jpg$','_print\.jpg',imageUrl);
}
return imageUrl;
}
?>
免责声明 - 不是 PHP 开发人员。
如果 php 脚本在构建网站时使用图像的全名,为什么不呢?
如果我希望你的代码是这样的,你应该创建这样的东西:
echo '<img src="images/artcle_'.$aid.',jpg"/>';
您应该通过 $_GET 或 $_POST 添加一个新变量,例如:
$print = "";
if($_GET['print'] == "1"){
$print = "_print";
}
然后:
echo '<img src="images/artcle_'.$aid.$print.',jpg"/>';
导致仅在发送 Print 参数时才显示打印版本。
<? php if ($print_page == true)
{
$append = "_print";
}
else
{
$append = "";
} ?>
<html>
<body>
<img src = "/image/image<?php echo $append?>.jpg />
</body>
</html>
通过在所有图像链接中包含 $append - 如果需要,它们将使用 _print 自动更新。如果您希望页面可打印,只需根据需要将 $print_page 设置为 true 或 false