【问题标题】:How do call a random .php file from another directory如何从另一个目录调用随机 .php 文件
【发布时间】:2019-10-20 09:00:29
【问题描述】:

我正在尝试从我的目录中的特定文件夹中调用一个随机的 .php 文件。

如果我将文件放在主文件夹(根目录)中,它可以正常工作,但是我的网页必须在某些时候更深入,所以如果我无法从目录中的任何位置调用文件,这可能会得到很乱。

因此,通过将文件放在同一个文件夹中,这对我来说非常有效

<div class="col-sm-3">                       
    <?php readfile(rand(1,99).".php");?>
</div>

但是,当我尝试将随机文件放入特定文件夹(在根目录中)时,它不会返回 .php 文件。我已经尝试了以下

1. <?php readfile("/Myfolder/".rand(1,99).".php");?>
2. <?php readfile("Myfolder".rand(1,99).".php");?>
3. <?php include("/Myfolder/.rand(1,99).".php");?>

以及 ../ 、 "/ 、 ../../ 等的各种其他组合

我还需要能够从目录中的任何位置调用文件,即“../../”

我是 php 新手,目前这确实阻止了我的进步,因此非常感谢任何帮助。

干杯

【问题讨论】:

  • 你注意到第3点是&lt;?php include("/Myfolder/".rand(1,99).".php");?&gt;吗?
  • 您遇到了什么错误,您是否尝试过绝对路径?
  • 您可能需要使用 Web 根目录的路径,可能类似于 /var/www/html/MyFolder

标签: php html random directory readfile


【解决方案1】:

您可能需要使用相对于文档根目录的路径名:

<?php include($_SERVER['DOCUMENT_ROOT'] . "/Myfolder/" . rand(1,99) . ".php"); ?>

【讨论】:

    【解决方案2】:

    根据提供的信息,您似乎并没有真正注释文件驻留在服务器上的绝对路径。

    举个例子:

    根目录是: /var/www/hosts/site.com/test.site.com

    您需要确定服务器上的文件结构是什么,并指定文件所在的完整路径。

    网络根路径存储在一个变量中:

    $_SERVER["DOCUMENT_ROOT"]
    

    参考网站: https://www.php.net/manual/en/reserved.variables.server.php

    例如,值等于:

    /var/www/hosts/site.com/test.site.com
    

    因此,在您的具体情况下,您可以尝试以下方法:

    <?php readfile($_SERVER["DOCUMENT_ROOT"] . "/Myfolder/".rand(1,99).".php");?>
    

    应该怎么做

    【讨论】:

    • 是的!这行得通!谢谢拉米。只是为了澄清任何阅读的人(因为我花了一些时间才得到它)这对我有用 - - 我的主机是通过 godaddy 进行的,所以它是一个 linux 服务器,必须输入整个文件路径才能正常工作。我还用 readfile 代替了 include 并且都有效。
    猜你喜欢
    • 2016-03-02
    • 2011-08-11
    • 2019-06-04
    • 1970-01-01
    • 1970-01-01
    • 2021-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多