composer autoload文件和变量

时间:2016-07-17 08:37:10

标签: composer-php autoload

我正在创建一个从数组中获取随机字符串的类。数据不会改变到足以使用一个值得它的数据库,但是有几百个条目所以我真的不想把整个东西放到我正在创建的类中。

有没有办法可以使用作曲家自动加载文件来创建一个新的php文件,将数组转储并在任何我喜欢的地方使用它?我已经阅读并且这样做你显然需要使用我不想做的globals关键字。

我是否在考虑这个问题?您只需将数组添加到类中,还是执行require等,类本身的功能很小。

感谢。

1 个答案:

答案 0 :(得分:0)

假设您将这些字符串作为文本文件。如果是作曲家包,你可以使用composer scripts并在安装过程中从这个文本文件生成php文件。

然后你可以拥有一个具有你的功能的类,而第二个类只包含一些项目。

项目类生成看起来像(未经测试):

<?php
    ...
    $items = file_get_contents('items.txt');

    $fileContent = '<?php
    namespace Your\Namspace;
    class Items {
        public function getItems() {
            return [
                \'' . implode("',\n\t\t\t'", array_filter(explode("\n", $items))) . '\'
            ];
        }
    }';

    file_put_contents('Items.php', $fileContent);