我想直接在laravel中运行自定义php代码,而不使用任何路由或http请求。
我希望我能说清楚,我的意思是,就像那些通过在浏览器中编写php代码来运行php代码的在线工具,然后运行它,并查看结果..
我发现这个方便的项目(Run-PHP-Code)直接在浏览器中运行PHP,但我不能在PHP代码中使用我的laravel项目的模型..
如何包含laravel的环境,以便我可以举例如:
$tag= new Tag;
其中Tag是laravel项目中的模型,将导致:
Fatal error: Class 'Tag' not found in D:\xampp\htdocs\widgetsRepository\app\controllers\Run-PHP-Code-master\index.php(49) : eval()'d code on line 3
有什么想法吗?这将是非常有用的!
修改
我在答案中尝试了Brian的建议,但我现在收到了这个错误:
Call to a member function connection() on null
在vendor \ laravel \ framework \ src \ Illuminate \ Database \ Eloquent \ Model.php
public static function resolveConnection($connection = null)
{
return static::$resolver->connection($connection);
}
所以,我认为我只需要对数据库进行排序,然后我就可以轻松地进行实验..
答案 0 :(得分:0)
我从未试图直接从laravel项目运行代码,我只是将部分代码复制并粘贴到Run PHP Code中。
话虽这么说,应该可以使用从this StackOverflow question:
获取的方法来运行代码Composer自动加载脚本,用于自动加载所有类:
require __DIR__.'/../bootstrap/autoload.php';
如果你需要来自IoC容器的东西,你可以:
$app = require_once __DIR__.'/../bootstrap/start.php';
然后你就可以做以下事情:
$post = Post::find(1);