我想使用 php 在指定的 URL 显示不同的图像。因此,如果页面名称www.website.com/?file=page_1
显示image_1.png
在主页中。
我无法在 php 代码中找到如何执行此操作,或者不知道在哪里寻找。
看起来您正试图在您的网站上显示远程内容。这样做的风险很小,如果网站出现故障,您的网站也会受到影响。
$GLOBALS['images'] = array();
// Fetch the page content
$ch = curl_init("http://www.example.com/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
$pageContent = curl_exec($ch);
curl_close($ch);
function splitByRegex($match)
{
$GLOBALS['images'] = $match[1];
}
// Strip the images from the content
preg_replace_callback(
'/\<img.*src\=\"(.*\.(?:png)|(?:jpg)|(?:gif))\"\>/ig',
'splitByRegex'
$pageContent
);
echo '<pre>' . print_r($GLOBALS['images'], true) . '</pre>';
关于这一点,我认为您应该阅读以下内容:
我假设您是 PHP 的初学者。您正在尝试做的是称为 HTTP GET 参数。你确定是?file=page_1
不是?file=image_1
?
要得到它,你需要这样做:
<img src="image_<?php echo (strpos("page_", $_GET["file"] === 0)) ? str_replace("page_", "", $_GET["file"]) : ""; ?>.png" alt="Image" />
如果这是您的错误,并且是?file=image_1
,那么您可以简单地使用以下代码:
<img src="<?php echo (strpos("image_", $_GET["file"] === 0)) ? $_GET["file"] : ""; ?>.png" alt="Image" />
$images = array(1 => "image1.jpg", 2 => "image2.jpg");
if (isset($images[$_GET["page"]])){
print $images[$_GET["page"]];
}