【问题标题】:composer autoload files and variables作曲家自动加载文件和变量
【发布时间】:2016-07-17 17:41:09
【问题描述】:
我正在创建一个从数组中获取随机字符串的类。数据的变化不足以使使用数据库变得值得,但是有几百个条目,所以我真的不想把整个东西放到我正在创建的类中。
有没有办法我可以使用 composers 自动加载文件来创建一个新的 php 文件,将数组转储到我喜欢的地方并使用它?我已经阅读并做到这一点,您显然需要使用我不想这样做的 globals 关键字。
我是不是想太多了?您是否只是将数组添加到类中,或者执行要求等,类本身的功能很小。
谢谢。
【问题讨论】:
标签:
composer-php
autoload
【解决方案1】:
假设您将这些字符串作为文本文件。如果它的 composer 包,你可以使用composer scripts 并在安装过程中从这个文本文件生成 php 文件。
然后你可以有一个类与你的功能和第二个类只包含项目数组。
Items 类生成可能看起来像(未测试):
<?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);