我正在使用 etrade api,它建立在许多静态调用许多函数的类之上。因此,如果我将其更改为“公共静态函数”,我将不断收到这些错误。这是完整的错误消息:
不应静态调用非静态方法 RequestParamsMain::buildFullURL(),假设 $this 来自第 72 行 /home/detroitclicks/public_html/etrade/Market/MarketClient.class.php 中的不兼容上下文
这是 Market 类下该函数的代码。RequestParamsMain 类位于一个单独的 php 文件中,该文件包含在此文件中:
public function productLookup($param_obj)
{
self::validateParamObj($param_obj,false);
$resourceURL = RequestParamsMain::buildFullURL(URL_PRODUCTLOOKUP,null,$param_obj);
return $this->getMarketResponse($resourceURL);
}
这是我要执行的代码:
$request_params = new productLookupParams();
$request_params->__set('company', 'cisco'); // company = "cisco" for example
$request_params->__set('type', 'eq'); // type = equity for example
$out= $mc_obj->productLookup($request_params);