-2

PHPを使って、指定したURLに別の画像を表示したい。したがって、ページ名がメインページ内にwww.website.com/?file=page_1表示される場合。image_1.png

PHPコードでこれを行う方法が見つからないか、どこを探すべきかわかりません。

4

3 に答える 3

0
$images = array(1 => "image1.jpg", 2 => "image2.jpg");

if (isset($images[$_GET["page"]])){
    print $images[$_GET["page"]];
}
于 2012-11-04T13:22:32.283 に答える
0

サイトに表示されるリモート コンテンツを取得しようとしているようです。これを行うには小さなリスクがあります。Web サイトがダウンした場合、Web サイトも影響を受けます。

$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>';

その点については、次のことを読んでおくとよいと思います。

  • ページのコンテンツを取得するためのcURL
  • コンテンツを解釈するための正規表現:
    • 取得したコンテンツを解釈するためのPCRE関数
    • PRCE 関数に何を探すかを伝える正規表現
于 2012-11-04T13:26:19.487 に答える
0

あなたは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" />
于 2012-11-04T13:18:21.833 に答える