-4

だから私はランダムな画像を取得し、特定のテキストでそれらを表示する配列を持っています。残念ながら、テキストは表示されません。表示された場合、画像の下にハイパーリンクが表示されません。誰か助けてください!!

<?php
define('RANDOM_IMAGES_COUNT', 3);
define('RANDOM_IMAGES_FORMAT', '<img src="%s"><a href="%s"> alt="%s" title="%3$s"   style="margin-right:10px"></a>');

#------------------------------------------------------------------------------

$images = array (
    array ( 'title' => 'Test 2', 'src' => 'pic2.jpg', 'href' => '<a href=http://mylink.com/path/>Click Me</a>' ),
    array ( 'title' => 'Test 3', 'src' => 'pic3.jpg', 'href' => '<a href=http://mylink.com/path/>Click Me</a>' ),
    array ( 'title' => 'Test 4', 'src' => 'pic4.jpg', 'href' => '<a     href=http://mylink.com/path/>Click Me</a>' )
);

#------------------------------------------------------------------------------

if ( count($images) < RANDOM_IMAGES_COUNT ) {
    trigger_error('Not enough images given', E_USER_WARNING);
    exit;
}

#------------------------------------------------------------------------------

for ($i = 0; $i < RANDOM_IMAGES_COUNT; $i++) {
    shuffle($images);

    $tmp = array_shift($images);
    printf( RANDOM_IMAGES_FORMAT, $tmp['src'],$tmp['href'], $tmp['title'] );
}
?>
4

4 に答える 4

2

画像の下にリンクを配置するには、CSS で作業する必要があります。コード サンプルが適切に機能するように、次の変更を行います。

  1. RANDOM_IMAGES_FORMATに更新

    define('RANDOM_IMAGES_FORMAT', '<img src="%s" /><a href="%s" alt="%s" title="%s" style="margin-right:10px">Click Me</a>');
    
  2. 配列を次のように変更します。

    $images = array (
        array ( 'title' => 'Test 2', 'src' => 'pic2.jpg', 'href' => 'http://mylink.com/path/' ),
        array ( 'title' => 'Test 3', 'src' => 'pic3.jpg', 'href' => 'http://mylink.com/path/' ),
        array ( 'title' => 'Test 4', 'src' => 'pic4.jpg', 'href' => 'http://mylink.com/path/' )
    );
    
  3. printf次のように使用します。

    printf( RANDOM_IMAGES_FORMAT, $tmp['src'], $tmp['href'], $tmp['title'], $tmp['title'] );
    
于 2013-09-03T09:21:53.013 に答える