2016-10-01 10 views
0

特定の画像が表示されているかどうかを確認するには、特定のテキストが必要です。特定の画像がPHPを表示している場合に特定のテキストを表示

現在、私は、ランダムな背景イメージのためにこれを持っている:

<?php 
// Time to do all the background stuffs 
    $bg = array('01.jpg', '02.jpg', '04.jpg', '970.jpg', '294.jpg', '096.jpg', '05.jpg', '08.jpg', '011.jpg', '012.jpg', '035.jpg', '045.jpg', '049.jpg', '066.jpg', '079.jpg', '096.jpg', '106.jpg', '173.jpg', '178.jpg', '205.jpg', '372.jpg', '500.jpg', '513.jpg', '682.jpg', '714.jpg', '860.jpg', '895.jpg', '914.jpg', '939.jpg', '966.jpg', '1025.jpg', '1074.jpg', '1123.jpg', '1162.jpg', '1499.jpg'); 
    // array of filenames 
    $i = rand(0, count($bg)-1); // generate random number size of the array 
    $selectedBg = "$bg[$i]"; // set variable equal to which random filename was chosen 
?> 

<style type="text/css"> 
@import 'https://fonts.googleapis.com/css?family=Yatra+One'; 
body{ 
background: #000000 url(images/<?php echo $selectedBg; ?>) no-repeat; 
background-position: center; 
} 

    </style> 

これは、バックグラウンドの背景とCSSを行うことですし、私は、画像に応じて表示する必要があり、複数の引用符を持っています。すべての引用は、画像に依存したよう

任意のヘルプは

乾杯トム

+0

ので、引用符の配列を作成し、どのように保証するであろう@u_mulder同じ –

+0

を行います正しい画像と同期されていることを確認しますか? –

+0

同じインデックス '$ i'または連想配列を使用します。 – andreas

答えて

2

を高く評価している - あなたは、アレイを再構築する必要があります:キーはファイル名でなければならず、値が引用符です。その後、あなたがこれを行うことができます:

// Time to do all the background stuffs 
$bg = array(
    '01.jpg' => 'I have a dream', 
    '02.jpg' => 'Don\'t ask yourself', 
    '04.jpg' => 'Bond. James Bond', 
    // more 
); 
$rand_key = array_rand($bg); 
$rand_quote = $bg[$rand_key]; 
echo $rand_key, $rand_quote; 
0

ソリューションワン:

あなたがテキストと一緒に画像をcommbineできるように、キーと値のペアとして配列を作成する必要があります。

構文:

array(
    key => value, 
    key2 => value2, 
    key3 => value3, 
    ... 
) 

最後の配列要素の後にコンマはオプションであり、省略することができます。これは通常1行の配列に対して行われます。つまり、配列(1,2)が配列(1,2)よりも優先されます。一方、複数行の配列では末尾に新しい要素を追加しやすくなるため、末尾のカンマが一般的に使用されます。

$image_text = array("light.png" => "Alternative Text for light.png", ...); 

そして、このようなデータを表示することができます。

<?php 
echo $image_text[$alt_text]; 
?> 

対処方法2:あなたはbgのために行ったように賢明なよう

あなたはaltとして変数の名前を与えられたことができますし、配列内の名前を提供することができますし、imgタグに印刷することができますあなたが使ったこと。

Exapmle:あなたはあなたがそのDIVにこの行を追加することができますスタイルで与えられたのBG画像とともに

$alt=array('lilly','rose','apple'); 

<body> 
<?php echo $alt[1]; ?> 
</body> 

bgイメージが表示されない場合は、altが表示されます。

1

たぶん、あなたは別の配列を追加する必要がありますあなたがテキストを表示したい場所に続いて

$bgText = array("01.jpg" => "text you wanna display when 01.jpg is selected", ...); 

を:

<?= $bgText[$selectedBg] ?> 
関連する問題