将外部php文件包含到zend框架中

时间:2014-09-10 07:31:51

标签: php

我想将外部php文件包含到我的zend项目中,但我无法做到这一点。我将我的外部文件放在zend项目的 public 文件夹中。以下就是我的尝试。

require_once (Zend_Controller_Front::getInstance()->getBaseUrl().'/myfile/include/phpfile.php');

但是我收到了以下错误。

( ! ) Warning: require_once(/myproject/public/myfile/include/phpfile.php): failed to open stream: No such file or directory

1 个答案:

答案 0 :(得分:0)

getBaseUrl()用于计算在路由匹配中使用的URL,而不是用于计算服务器路径:

http://framework.zend.com/manual/1.10/en/zend.controller.request.html#zend.controller.request.http.baseurl

假设您的应用程序文件夹与您的公用文件夹处于同一级别,以下内容应该可以帮助您获取phpfile.php的路径:

$path = realpath(APPLICATION_PATH . '/../public/myfile/include/phpfile.php')

这假设您有一个标准的index.php设置,其中包含APPLICATION_PATH常量。

然后您可以要求$ path变量:

require_once($path);

但是你也应该考虑在任何公共路径上使用require是否谨慎,出于安全原因,php文件可能会更好地放在/ public路径之外。