0

私は次のような多次元配列の情報のセットを持っています:

$slides = array (
    array (
        'link' => 'page.php',
        'image' => 'image1.jpg',
        'alt' => 'text for alt' 
    ),
    array (
        'link' => 'anotherpage.php',
        'image' => 'image2.jpg',
        'alt' => 'text for alt' 
    )
);

現在使用しているもの:

foreach($slides as $slide => $data){
    echo "<a href=\"{$data['link']}\">
        <img src=\"{$data['image']}\" alt=\"{$data['alt']}\" />
        </a>";
}

さて、私の質問は、これを関数として機能させるにはどうすればよいのでしょうか。

function createSlides($slides){ /* foreach loop */ }

私はこれを試しましたが、配列は言語構造であり、オブジェクトではないため、配列を渡す方法を誤解していると思います。多次元配列を扱うのはこれが初めてです。また、関数の引数、つまり、で何が行われるかを制御できると考えてい$dataecho createSlides($slides[1,2,4]);ました。私はこれを誤解していますか、それとも配列が関数に渡されていないという理由だけですか?

4

1 に答える 1

1

これを求めているかどうかはわかりませんが、通常のパラメータと同じです。

function createSlides($slides){
   foreach($slides as $slide => $data){
       echo "<a href=\"{$data['link']}\">
          <img src=\"{$data['image']}\" alt=\"{$data['alt']}\" />
       </a>";
   }
}

createSlides($slides);
于 2013-03-06T17:22:34.350 に答える