symfony - 你如何路由到 Symfony4 中的 vanilla php 脚本?
问题描述
我找到了一个我想使用的很棒的库(https://github.com/pqina/filepond-server-php),但它只是一堆普通的 php 脚本,有些是类,有些不是。
它们工作正常,但我不知道如何将它集成到我的 Symfony 4 应用程序中,因为自动加载器希望所有内容都采用类形式,类名与文件名匹配。同样将其全部解析并将其放入控制器类将花费很长时间。
所以我只是手动将这个https://github.com/pqina/filepond-server-php放入我的项目中名为“filepond”的文件夹中,所以它就像(我取出了我不需要的文件/文件夹) :
我不知道如何路由到 /src 之外的文件夹(特别是路由到像 index.php 这样的非控制器类 vanilla 脚本),以便在调用时执行此代码。这是否可能(在您的 Symfony 项目中路由并执行 vanilla php 脚本)?
解决方案
要访问 src 之外的文件,您可以更新您的composer.json
自动加载配置。如果你的班级在里面filepond/Helper
,你应该添加这个:
"autoload": {
"psr-4": {
"": ["src", "filepond/Helper"]
}
}
在这种情况下,每当您尝试加载一个类时,自动加载器都会尝试在 src 中找到它,然后在“filepond/Helper”中找到它。但是你应该用模式重命名类
CLASS_NAME.php
一个例子:
如果您有一个名为 with 的类,Foo\Bar\Fizz\Buzz
则应该有一个文件
src/Foo/Bar/Fizz/Buzz.php
filepond/Helper/Foo/Bar/Fizz/Buzz.php
或者,......只需加载FilePond.class.php
您的前端控制器。加载 symfony 应用程序的位置相同。
推荐阅读
- java - 无法从数据源获取连接
- javascript - 如何根据用户的请求生成多个输入?
- javascript - 使用具有特定移动规则的 DFS 生成迷宫
- python - AttributeError:使用 coursera-dl 包时,“模块”对象在 Windows 上没有属性“PROTOCOL_TLSv1_2”
- if-statement - 我想避免在下面的代码中出现其他情况,有什么建议吗?
- python - 转换为 exe 和模块突然不起作用
- javascript - 当通过按钮单击javascript事件更改字体大小时,是否可以重新评估艺术指导?
- python - 如何从 csv 文件中排除某个组?
- python-3.x - 字节到字符串,无需解码
- macos - 在 mac (Mohave) 上安装 SRILM 时遇到问题