私のギャラリー フォルダの構造は次のとおりです。
/年/月/日/ファイル
次に、私のウェブサイトでそれらを印刷します。この構造体を使用して、すべてのファイルを大きな配列で取得する関数があります。
Array
(
[2017] => Array
(
[01] => Array
(
[01] => Array
(
[0] => yo.jpg
)
)
)
[2016] => Array
(
[02] => Array
(
[01] => Array
(
[0] => yo.jpg
)
)
[01] => Array
(
[03] => Array
(
[0] => timed-photos10.jpg
)
[01] => Array
(
[0] => yo.jpg
)
)
)
)
次に、この画像を印刷するための新しい関数を作成しました。すべての配列キーを読み取るパスを取得する必要があります。
これが私の機能です:
// ...
array_walk($mediaList, array($this, 'generateMedia'));
public function generateMedia(&$value, $key)
{
if(is_array($value))
{
echo $key . "/";
array_walk($value, array($this, 'generateMedia'));
}
else
{
echo $value . "<br>";
}
}
問題は、配列に複数の配列がある場合に発生します。
私が持っている結果は次のとおりです。
2017/01/01/yo.jpg
2016/02/01/yo.jpg
01/03/timed-photos10.jpg
01/yo.jpg
ご覧のとおり、1 番目と 2 番目のレコードは問題ありませんが、3 番目と 4 番目のレコードは正しくありません。これらの要素には複数の配列があるからです。
いろいろ試しているのですが解決できません。
私に何ができる?
ありがとうございました!