0

サーバー上に、静的な html コンテンツを/assets/includes/updates/備えたファイルを含むフォルダーがあります。.php

echoこのフォルダーからファイルをランダムに取得し、div に入れたいと思います。ここに私が持っているものがあります:

<?php
 function random_update($dir = $_SERVER['DOCUMENT_ROOT'].'/assets/includes/updates/')
{
    $files = glob($dir . '/*.*');
    $file = array_rand($files);
    return $files[$file];
}
?>

<div class="my-div">
 <?php echo random_update(); ?>
</div><!--end my-div-->

500 エラーが発生していますか? また、私の意図はecho、一度に 1 つのファイルだけにすることです。提供されたコードはそれを達成しますか?

4

3 に答える 3

5

PHP は、使用した構文を認識しません。次のようにバイパスする必要があります。

<?php
function random_update($dir = NULL)
{
    if ($dir === NULL) {
        $dir = $_SERVER['DOCUMENT_ROOT'] . '/assets/includes/updates/';
    }

    $files = glob($dir . '/*.*');
    $file = array_rand($files);
    return $files[$file];
}

また、開発環境でエラー ダンプを有効にして、次回何がうまくいかなかったのかを確認することもできます。

于 2012-09-24T21:41:33.493 に答える
2

問題が見つかった別の回答とは別に、コードが必要なことを行うには、次のコードを置き換える必要があります。

<?php echo random_update(); ?>

これについて:

<?php echo file_get_contents (random_update()); ?>

現在のコードはファイル名をdiv内に出力するため、ファイルの実際のコンテンツをdivに挿入したかったと思います。

于 2012-09-24T21:44:35.030 に答える
1

「デフォルト」関数の引数値として式を使用することはできません。

于 2012-09-24T21:41:40.087 に答える