dtl85148 2013-06-28 00:58
浏览 29
已采纳

用于php新闻文章文件的glob-scan文件夹

I have a news overview page, and a folder of php files I would like to individually include. Rather than manually including each one into my overview page, I thought I would use php to scan the folder for php files, and print them out as an include statement.

I have the following code:

<?php $articles = glob("/assets/news/form/*.php"); ?>
<?php
if(count($articles)) {
  natcasesort($articles);
  foreach($articles as $article) {
  ?>
      <?php include("$_SERVER[DOCUMENT_ROOT]/assets/news/overview/$article"); ?>

<?php
    }} else {
      echo "Sorry, no articles to display!";
    }
?>

I get no syntax with this, but I do not receive any output. Just a blank space where the articles should be.

The output I am wanting is something like this:

<?php include("$_SERVER[DOCUMENT_ROOT]/assets/news/overview/1.php"); ?>
<?php include("$_SERVER[DOCUMENT_ROOT]/assets/news/overview/2.php"); ?>
<?php include("$_SERVER[DOCUMENT_ROOT]/assets/news/overview/3.php"); ?>
<?php include("$_SERVER[DOCUMENT_ROOT]/assets/news/overview/4.php"); ?>
<?php include("$_SERVER[DOCUMENT_ROOT]/assets/news/overview/5.php"); ?>
<?php include("$_SERVER[DOCUMENT_ROOT]/assets/news/overview/6.php"); ?>

Ultimately I am wanting to write a php function that scans a folder in ROOT/assets/news/form/ for all php files, and include all the files with the same name from the folder ROOT/assets/news/overview.

My news overview page is currently in /news/index.php

Can anyone help me out with this?

  • 写回答

2条回答 默认 最新

  • douba8819 2013-06-28 01:46
    关注

    Here, give this a whirl: (TESTED)

    Tested on my server using absolute path.

    <?php
    
    // path to .php files must be absolute path
    // example: /server/user/f/fred/forms/*.php
    // May have to modify your path if it's not absolute
    
    // You may have to use this, if doesn't work
    // $articles = glob("$_SERVER[DOCUMENT_ROOT]/assets/news/forms/*.php");
    $articles = glob("/assets/news/forms/*.php");
    
    if(count($articles)) {
      natcasesort($articles);
      // rsort($articles); // use rsort for descending order
    
    foreach($articles as $article) {
        $article = basename($article);
    
    // You may have to use this, if doesn't work
    // include("$_SERVER[DOCUMENT_ROOT]/assets/news/forms/$article");
    include("$_SERVER[DOCUMENT_ROOT]/assets/news/forms/$article");
    
          }
    
        }
    
    else {
    
    echo "Sorry, no articles.";
    
    }
    
    ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 请问为什么我配置IPsec后PC1 ping不通 PC2,抓包出来数据包也并没有被加密
  • ¥200 求博主教我搞定neo4j简易问答系统,有偿
  • ¥15 nginx的使用与作用
  • ¥100 关于#VijeoCitect#的问题,如何解决?(标签-ar|关键词-数据类型)
  • ¥15 一个矿井排水监控系统的plc梯形图,求各程序段都是什么意思
  • ¥50 安卓10如何在没有root权限的情况下设置开机自动启动指定app?
  • ¥15 ats2837 spi2从机的代码
  • ¥200 wsl2 vllm qwen1.5部署问题
  • ¥100 有偿求数字经济对经贸的影响机制的一个数学模型,弄不出来已经快要碎掉了
  • ¥15 数学建模数学建模需要