【问题标题】:PHP Include an ArrayPHP 包含一个数组
【发布时间】:2013-09-28 10:03:06
【问题描述】:

我正在为一个客户创建一个平面文件登录系统(因为他们的 IT 团队不想给我们一个数据库)

我已经解决了这个问题:Easy login script without database,但是效果很好......

我需要添加大量登录名列表,并希望将它们包含在一个单独的文件中,而不是该脚本中。

我有这样的事情:

<?php
session_start();

// this replaces the array area of the link above
includes('users.php');

//and some more stuff

?>

在用户文件中我有

$userinfo = array(
                'kate'=>'inciterocks!',
                'nick'=>'inciterocks!'
                );

但是,它只是从该文件中直接输出文本。有没有办法可以包含它,让它像在主脚本中一样运行?

干杯:)

【问题讨论】:

    标签: php arrays include


    【解决方案1】:

    包含在 PHP 中的工作方式就像对其他代码和任何其他内容的引用一样。所以你应该将文件的内容包含在&lt;?php标签中,这样它就会被解析为PHP。

    您也可以从包含的文件中返回任何内容(我提到这一点是因为在您的情况下这是最好的解决方案):

    mainfile.php

    <?php
    session_start();
    
    // this replaces the array area of the link above
    $userinfo = include('users.php');
    

    users.php

    return array(
        'kate'=>'inciterocks!',
        'nick'=>'inciterocks!'
    );
    

    【讨论】:

      【解决方案2】:

      语句名称实际上是include,而不是includes

      尝试以下方法:

      include 'users.php';
      

      如果您的代码以文本形式输出,那可能是因为您错过了开头的&lt;?php 标签。确保他们在场。

      users.php 应该如下所示:

      <?php
      
      $userinfo = array(
                      'kate'=>'inciterocks!',
                      'nick'=>'inciterocks!'
                      );
      

      但是,结束标记不是必需的,没有它您的代码也能正常工作。

      【讨论】:

      • 你的拼写是对的,但对include 本身有点错误。这不是一个函数,而是一个语句(所以你可以扔掉无意义的括号)
      • @oezi: 编辑了答案:)
      【解决方案3】:

      确保包含的文件中有一个打开的 PHP 标记:

      <?php
          $userinfo = array(
              'kate'=>'inciterocks!',
              'nick'=>'inciterocks!'
          );
      

      【讨论】:

        【解决方案4】:

        在 Yii 框架(例如配置)中是这样完成的

        $users = include('users.php');
        

        users.php:

        <?php
         return array(
               'user1' => array(...), 
               'user2' => array(...),
            );
        

        【讨论】:

          【解决方案5】:

          users.php:

          <?php
          function getUsers(){
              return array(
                 'user1' => array(...), 
                 'user2' => array(...),
              );
          }
          

          一些引导文件

          include('users.php');
          $myUsers = getUsers();
          

          【讨论】:

          • 虽然代码可能有效,但请始终说明您认为这是解决方案的内容和原因。提供一个更大的背景,让每个人都了解为什么这是解决问题的方法。
          猜你喜欢
          • 2016-03-12
          • 1970-01-01
          • 2013-05-06
          • 2015-10-20
          • 1970-01-01
          • 2012-06-14
          • 1970-01-01
          • 1970-01-01
          • 2014-04-16
          相关资源
          最近更新 更多