如何重定向工匠修补输出?

时间:2015-12-11 15:40:24

标签: php bash laravel artisan

我使用工匠修补控制台制作大型物体。 从此对象返回的方法输出不完全适合Artisan Tinker控制台。我想将其保存到文件中。但是怎么样?我正在使用linux。

3 个答案:

答案 0 :(得分:1)

从Linux / MAC OSX命令行尝试:

php artisan tinker | tee /tmp/tinker.out 

完成后,您的输出应该在/tmp/tinker.out

答案 1 :(得分:0)

我在为自己寻找答案的同时,通过外部API工具(在本例中为QuickBooks Online)进行了一些临时报告,从而找到了您的问题。

查看Laravel 5.8的文档,最直接的写文件方法是使用laravel的存储引擎。

第1步

确保已激活存储驱动程序。这是在我使用过/config/filesystems.php的{​​{1}}中完成的,因为一旦完成报告,我将再次停用它。

第2步

如果您使用的是类或方法,则可以导入存储,否则只需在修补程序中调用存储模块即可。

我正在将localjson_encode()结合使用,以使我的数据易于阅读:

这个例子对我有用:

JSON_PRETTY_PRINT

参考:

Lararacasts问:https://laracasts.com/discuss/channels/laravel/how-to-write-texts-to-file-in-laravel?page=1

文件系统文档:https://laravel.com/docs/5.8/filesystem

答案 2 :(得分:0)

Storage Facade很棒,但是配置shiz很烂...。只需使用php本机功能file_put_contents()并在您具有服务器权限的任何地方写(/ tmp /效果很好)。

$object = mySweetMethodThatRetrievesAwesomelyLargeObject();
file_put_contents('/tmp/my-large-object.obj', json_encode($object, JSON_PRETTY_PRINT));