在html.twig中导入PHP文件
我正在用Symfony2构建一个webapp,我很难将php文件导入到我的代码中。我只是在使用php文件时遇到了404-notfound错误。简而言之,我正在将Uploadifive文件上传器实现到我的应用程序中,通过将js和css包含在我的base.html.twig中,我在应用程序的不同页面上扩展了它们,从而正确加载了它们 uploadifive.php文件与css和js文件位于同一文件夹中,但我似乎无法在代码中正确获取它的路径。我确信我在这里遗漏了一些非常简单的东西,但我无法修复它: upload.html.twig 这些文件位于/app/Resources/uploadifive/在html.twig中导入PHP文件,php,symfony,twig,bundle,uploadifive,Php,Symfony,Twig,Bundle,Uploadifive,我正在用Symfony2构建一个webapp,我很难将php文件导入到我的代码中。我只是在使用php文件时遇到了404-notfound错误。简而言之,我正在将Uploadifive文件上传器实现到我的应用程序中,通过将js和css包含在我的base.html.twig中,我在应用程序的不同页面上扩展了它们,从而正确加载了它们 uploadifive.php文件与css和js文件位于同一文件夹中,但我似乎无法在代码中正确获取它的路径。我确信我在这里遗漏了一些非常简单的东西,但我无法修复它: up
有人能帮我吗?我想问题在于如何引用php文件。您只能引用可公开访问的文件,并且所有文件都位于symfony的web文件夹中。它们主要是资产或上传的文件。所以,检查你的网页文件夹,我打赌你在那里找不到任何php文件
在这种情况下,它不应该是可通过web访问的。您必须使用上传逻辑创建一个控制器,并创建一个路由来为该控制器服务。因此,假设您在路由中定义了/myuploader,由您的控制器提供服务。如果你想在你的小枝文件中使用路由id,并且symfony已经知道它在哪里,你基本上可以使用“/myuploader”或{path'myuploader'}}。浏览器应该如何知道“%kernel.root\u dir%”在哪里?如果uploadifive.php是路由中定义的路径,你可以使用{path'path\u to\u uploadifive.php}或者您可以将%kernel.root_dir%更改为{{app.kernekl.root_dir}
{% block content %}
<input id="file_upload" type="file" name="file_upload" /> // This works
<script type="text/javascript">
$(function() {
$('#file_upload').uploadifive({
'uploadScript' : '%kernel.root_dir%/Resources/uploadifive/uploadifive.php' // THIS DOES NOT WORK, 404's
// Put your options here
});
});
</script>
{% endblock %}