Home  >  Article  >  Backend Development  >  thinkphp中第三方类引入问题

thinkphp中第三方类引入问题

WBOY
WBOYOriginal
2016-06-06 20:13:29961browse

项目引入了第三方类库acp_service,引入是成功的,这个acp_service类中自己引入了
secureUtil.php类。secureUtil.php类引入了另外一个类并且示例化了引入的类,在方法中使用了引入类的方法,在运行加载第三方类库acp_service的那个方法,页面就会报错说找不到secureUtil.php中 那个实例化过的类里面的方法,求解?

引入第三方类的方法,引入是成功的

<code>vendor('Onsdk.acp_service');</code>

acp_service.php

<code>include_once 'log.class.php';
include_once 'secureUtil.php';</code>

secureUtil.php

<code>$log = new PhpLog ( SDK_LOG_FILE_PATH, "PRC", SDK_LOG_LEVEL );</code>

phplog为log.class.php的类名,页面报错为:Call to a member function LogInfo() on a non-object , LogInfo()是log.class.php里面的方法

求解,谢谢!

补充:奇怪了在加载页面使用,又不报错,页面正常
就是app_service文件里面引入的那个文件调用 $log->LogInfo() 就报错。

<code>include_once APP_PATH . '/Onsdk/acp_service.php';
$log->LogInfo();die();</code>

回复内容:

项目引入了第三方类库acp_service,引入是成功的,这个acp_service类中自己引入了
secureUtil.php类。secureUtil.php类引入了另外一个类并且示例化了引入的类,在方法中使用了引入类的方法,在运行加载第三方类库acp_service的那个方法,页面就会报错说找不到secureUtil.php中 那个实例化过的类里面的方法,求解?

引入第三方类的方法,引入是成功的

<code>vendor('Onsdk.acp_service');</code>

acp_service.php

<code>include_once 'log.class.php';
include_once 'secureUtil.php';</code>

secureUtil.php

<code>$log = new PhpLog ( SDK_LOG_FILE_PATH, "PRC", SDK_LOG_LEVEL );</code>

phplog为log.class.php的类名,页面报错为:Call to a member function LogInfo() on a non-object , LogInfo()是log.class.php里面的方法

求解,谢谢!

补充:奇怪了在加载页面使用,又不报错,页面正常
就是app_service文件里面引入的那个文件调用 $log->LogInfo() 就报错。

<code>include_once APP_PATH . '/Onsdk/acp_service.php';
$log->LogInfo();die();</code>

这个是你在调用的LogInfo的时候报错的呀,而且调用这个方法的变量不是phplog的实例。
你检查下调用这个方法的变量是否正确,如果确定正确,再检查下$log是否实例化成功(如果使用$log
调用的话)。

试一下$log = new \PhpLog ( SDK_LOG_FILE_PATH, "PRC", SDK_LOG_LEVEL );, thinkphp的第三方类库一般要加上一个\

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn