为什么我的代码单独工作但是当我将它与我的控制器合并时呢?

时间:2015-06-06 23:49:20

标签: php yii google-api-php-client

我在conn, _:=net.Dial("tcp", "127.0.0.1:8080") ... fmt.Fprintf(conn, "test") ... buffer:=make([]byte, 100) conn.Read(buffer) 文件中写了这段代码。

controller  : ['$scope','$element', '$attrs', '$transclude', '$http',  function($scope, $element, $attrs, $transclude, $http) { 
         $http.post($scope.url,$scope.urlParams).success(function (data) {  

         });

如果我这样转到这个文件:test.php它可以工作,但如果我将相同的代码复制到位于<?php include ($_SERVER["DOCUMENT_ROOT"].'/MySite/protected/MyYouTube/google/src/Google/autoload.php'); require_once ($_SERVER["DOCUMENT_ROOT"].'/MySite/protected/MyYouTube/google/src/Google/Client.php'); require_once ($_SERVER["DOCUMENT_ROOT"].'/MySite/protected/MyYouTube/google/src/Google/Service/YouTube.php'); ?> 所在文件夹下的控制器中,我会得到:

  

include(Google_Service.php):无法打开流:没有这样的文件或   目录

与进口没有冲突。事实上,控制器和视图可能是空的,但我仍然得到同样的东西。

显然,当localhost/MySite/protected/MyYouTube/test.php未实际加载时会发生这种情况。

如果将代码集成到网站中,它会抛出此错误吗?

这就是我网站的路径:       test.php 我访问该文件的方式似乎很重要。

我尝试了几件事。我尝试将autoload.php导入到我的视图或控制器中,但仍然遇到同样的错误。我尝试使用localhost/MySite/index.php/user/view,它也会出现同样的问题。

路径是正确的,我已多次检查过。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

包含路径是实际的服务器路径,而不是站点路径,如果您在开头使用/,则告诉它查看服务器根目录。

如果您知道服务器中的绝对路径,则可以使用它/var/www/MySitec:\mysite,如果您不知道那么您使用相对路径。

答案 1 :(得分:0)

$ _ SERVER [“DOCUMENT_ROOT”]适用于PHP 5.3,不确定下面是否检查您的版本。尝试删除MySite部分之前的'/',因为变量已经为你做了,所以它可能像localhost // MySite一样打印,虽然我不确定这应该或不应该工作。 ]

自动加载php也应该加载require_once函数,而不是include。祝你好运!