2016-11-19 5 views
0
public function set_array($set_value) { 
    /*set empty class*/ 
    $tempclass = new stdClass(); 

    /*full Image path src*/ 
    $search_dir = "/domain/img/company/Image1-000000-016"; 

    /*open dir*/ 
    $images = glob("$search_dir/*.*"); 
    sort($images); 

    /*loop thought dir and get first Image*/ 
    if (count($images) > 0) { 
    /*get product imagepath and set as src*/ 
    $tempclass->src = $images[0]; 

    /*return all data to array*/ 
    $this->Imagedata[] = clone($tempclass); 
    } 

} 

私の意図を最初の最初の画像を保存するには、私のフォルダの画像を確認し、Imagedata[]に最初の画像を保存するためだったが、私はなぜ知らない私は、Imagedata[]が空でチェックしておきます。私はフォルダパスもチェックしました。それは正しいので、何が間違っていましたか?チェックフォルダのすべての画像およびアレイへ

答えて

0

おそらくファイルを$files変数に保存し、次に定義されていない変数$imagesをチェックしている可能性があります。私は本当にあなたのPHP環境にE_NOTICEエラーをオンにいくつかの時間を費やすことをお勧めし

が、彼らはミスのこの種をキャッチして、あなたに大いに役立つ質問編集した後

+0

申し訳ありませんが私はそれ間違え、私のファイルは、$像だったが、それでも私は空の配列を得ました。 –

1

(それは誰にでも起こります):

$directory = "/domain/img/company/Image1-000000-016"; 
$images = scandir ($directory); 
$firstImage = $directory . $files[2]; 


//$tempclass->src = $firstImage; 

これはチェックディレクトリのパーミッションを仕事とは全く存在しているかどうかを確認していない場合:

私は、ディレクトリ内のファイルを取得するための最良の方法があると思いますか?

旧回答:

あなただけの何か小さな間違ってやっています! $ images変数はまったくありません!私が思う:

if (count($images) > 0) { 
    $tempclass->src = $images[0]; 
    //.... 
} 

でなければなりません:

if (count($files) > 0) { 
    $tempclass->src = $files[0]; 
    //.... 
} 
+0

申し訳ありませんがミスタイプ、私のファイルは$画像でしたが、まだ空の配列があります。 –

+0

グロブの直後にvar_dump($ images)があるとどうなりますか? – Johnny

+0

アレイ(サイズ= 0) 空配列(サイズ= 0) 空配列(サイズ= 0) 空配列(サイズ= 0) –

関連する問題