php读取json三级,php-流明从文件中读取JSON

在Lumen应用中尝试从json文件填充数据库时遇到file_get_contents错误,原因是无法找到指定文件。解决方案是使用__DIR__常量获取当前目录,并通过realpath获取文件的绝对路径,确保文件权限正确。修复后的代码能够正常读取并解析json文件内容。
摘要由CSDN通过智能技术生成

我正在使用Lumen Framework,并且尝试从json文件播种数据库.我正在做这样的事情:

public function run()

{

$json = json_decode(file_get_contents('database/seed/file.json'), true);

...

}

但是当我执行种子命令php artisan db:seed时,出现此错误:

[ErrorException]

file_get_contents(database/seed/file.json): failed to open stream: No such file or directory

[Symfony\Component\Debug\Exception\FatalThrowableError]

Call to undefined function public_path()

有什么想法我做错了吗?

谢谢

解决方法:

使用__DIR__找出脚本路径

public function run()

{

dd(__DIR__);

}

对于此示例,可以说输出为/ home / vagrant / Code / app / Http / Controllers.

现在这应该可以工作(如果文件权限合适)

public function run()

{

$file_path = realpath(__DIR__ . '/../../database/seed/file.json');

$json = json_decode(file_get_contents($file_path), true);

// ...

}

标签:lumen,laravel,php

来源: https://codeday.me/bug/20191026/1940282.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值