-2

配列のコンテンツを取得しようとすると、コンテンツではなく「配列」が取得されます。

foreach 関数 (正しければ、今まで試すことができませんでした) が写真を投稿するはずです。

<?php
    $slideshowdir = "./public/all/slideshow/";
    if (is_dir($slideshowdir)) {
        if ($dh = opendir($slideshowdir)) {                             
            while (($slides = readdir($dh)) !== false) {
               $possible_slides = $slideshowdir.array($slides);
            }
        }
    }

    foreach($possible_slides as $slide){
        $picture = file($slide);
            echo $picture;
     }
?>  

編集: 申し訳ありませんが、100% 明確ではありませんでした。投稿したいファイルは写真です。

編集:次のコードで問題を解決しました:

<?php
    $possible_slides = array();
    $slideshowdir = "./public/all/slideshow/";
    if (is_dir($slideshowdir)) {
        if ($dh = opendir($slideshowdir)) {                             
            while (($slide = readdir($dh)) !== false) {
                if (is_file ($slideshowdir.$slide)) {
                    $possible_slides[] = $slideshowdir.$slide;
                }
            }
        }
    }

    foreach($possible_slides as $slide){
        echo '<img src="'.$slide.'">';
    }       
?>  
4

3 に答える 3

2

のドキュメントをお読みくださいfile()。ファイルの内容の配列を1行ずつ返します。

代わりに使用したいのはですfile_get_contents()

また、最初のループは怪しいように見えます。私はあなたがこれをしたいと思うと思います:

<?php
$possible_slides = array();
$slideshowdir = "./public/all/slideshow/";
if (is_dir($slideshowdir)) {
    if ($dh = opendir($slideshowdir)) {                             
        while (($slide = readdir($dh)) !== false) {
           if (is_file ($slideshowdir.$slide)) {
               $possible_slides[] = $slideshowdir.$slide;
           }
        }
    }
}

foreach($possible_slides as $slide){
    $picture = file_get_contents($slide);
    echo $picture;
}

whileループにチェックを追加して、ファイルのみがに追加されていることを確認していることに注意してください$possible_slides.これにより、サブディレクトリとおよびが除外され..ます。

于 2013-01-22T17:07:48.110 に答える
0

変化する:

$possible_slides = $slideshowdir.array($slides);

に:

$possible_slides[] = $slideshowdir.array($slides);
于 2013-01-22T17:22:44.093 に答える
0

この部分は厄介なようです:$slideshowdir.array($slides)

配列を文字列に連結してもよろしいですか?

于 2013-01-22T17:10:34.407 に答える