php - 在哪里设置原始数据文件夹
问题描述
我有 symfony4 项目。
我需要处理一些 csv 文件,所以我在主目录下创建了 myAppCsv 文件夹。
protected function execute(InputInterface $input, OutputInterface $output)
{
$finder = new Finder();
$finder->in(array('myAppCsv'));
然后我像这样从命令访问文件夹。
$ php bin/console app:getcsv
当您在主目录中执行时,它运行良好。
现在,我想从命令行使用相同的命令(测试 crontab)
/usr/local/bin/php /Users/whitebear/httproot/myApp/bin/console app:getcsv
它显示错误。
The "myAppCsv" directory does not exist.
我应该把我的原始数据目录和硬件放在哪里来处理?
解决方案
您可以将路径指定为绝对路径。您可以使用__DIR__
常量或kernel.root_dir
参数。
kernel.root_dir
如果您必须将命令移动到另一个文件夹中,我更喜欢使用。
您将拥有文件夹的绝对路径,例如:
$finder->in(
array(
sprintf('%s/../myAppCsv', $this->rootDir)
)
);
从依赖注入或容器获取 rootDir
推荐阅读
- vega-lite - Vega-Lite 分层图表:如何让刻度线和刻度线标签跨越整个轴?
- c# - System.Runtime.InteropServices.COMException 在读取服务器上的 Excel 文件但不是本地的应用程序
- c# - 为什么 Lambda 表达式在此 Include() 中无效?
- python - Django中多个应用程序的多个数据库-无法路由到特定应用程序的相关数据库
- java - 更改方法注释参数值
- google-api - 访问 Google 表格/文档 Blame API
- mysql - 如何在MYSQL中自动将值从一个表列加载到另一列
- api - TypeError: 'str' 和 'int' Doc2Vec 的实例之间不支持'<'
- git - 停止 Visual Studio 重命名文件
- airflow - 气流网址无法连接