【问题标题】:How to include a class in PHP [closed]如何在 PHP 中包含一个类 [关闭]
【发布时间】:2010-12-31 23:13:24
【问题描述】:

我有文件index.php,我想在其中包含文件class.twitter.php。我该怎么做?

希望当我将以下代码放入 index.php 时,它会起作用。

$t = new twitter();
$t->username = 'user';
$t->password = 'password';

$data = $t->publicTimeline();

【问题讨论】:

标签: php include require


【解决方案1】:

你的代码应该是这样的

require_once('class.twitter.php');

$t = new twitter;
$t->username = 'user';
$t->password = 'password';

$data = $t->publicTimeline();

【讨论】:

    【解决方案2】:

    您可以使用以下任一方法:

    include "class.twitter.php";
    

    require "class.twitter.php";
    

    如果文件不存在,使用require(或require_once,如果你想确保类在执行期间只加载一次)将导致致命错误,而include只会引发警告。请参阅http://php.net/requirehttp://php.net/include 了解更多详情

    【讨论】:

      【解决方案3】:

      在命令行界面中包含一个带有 use 关键字的类示例:

      除非您还包含或需要 php 文件,否则 PHP 命名空间在命令行上不起作用。当 php 文件位于由 php 守护进程解释的 web 空间中时,您不需要 require 行。您所需要的只是“使用”行。

      1. 新建目录/home/el/bin

      2. 创建一个名为 namespace_example.php 的新文件并将此代码放入其中:

        <?php
            require '/home/el/bin/mylib.php';
            use foobarwhatever\dingdong\penguinclass;
        
            $mypenguin = new penguinclass();
            echo $mypenguin->msg();
        ?>
        
      3. 创建另一个名为 mylib.php 的文件并将此代码放入其中:

        <?php
        namespace foobarwhatever\dingdong;
        class penguinclass 
        {
            public function msg() {
                return "It's a beautiful day chris, come out and play! " . 
                       "NO!  *SLAM!*  taka taka taka taka."; 
            }   
        }
        ?>   
        
      4. 像这样从命令行运行它:

        el@apollo:~/bin$ php namespace_example.php 
        
      5. 哪些打印:

        It's a beautiful day chris, come out and play!
        NO!  *SLAM!*  taka taka taka taka
        

      在此处的 cmets 中查看有关此内容的注释:http://php.net/manual/en/language.namespaces.importing.php

      【讨论】:

        【解决方案4】:

        我建议你也看看__autoload
        这将清理需求和包含的代码。

        【讨论】:

        • 一个代码示例会很好。
        • @PeterMortensen 您可以在此处查看示例:php.net/manual/en/language.oop5.autoload.php php 做得非常好的一件事是文档
        • @AntonioCS 如果您查看 PHP 文档中经常非常有用甚至至关重要的大量 cmets,您可能需要考虑 PHP 提供的文档质量。
        【解决方案5】:
        1. require('/yourpath/yourphp.php');

          http://php.net/manual/en/function.require.php

        2. require_once('/yourpath/yourphp.php');

          http://php.net/manual/en/function.require-once.php

        3. include '/yourpath/yourphp.php';

          http://www.php.net/manual/en/function.include.php

        4. use \Yourapp\Yourname

          http://php.net/manual/fa/language.namespaces.importing.php

        注意事项:

        避免使用 require_once,因为它很慢:Why is require_once so bad to use?

        【讨论】:

          【解决方案6】:
          猜你喜欢
          • 2016-07-10
          • 2012-02-15
          • 1970-01-01
          • 2016-11-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-09-20
          • 1970-01-01
          相关资源
          最近更新 更多