thinkPHP,引入檔案問題。

來源:互聯網
上載者:User
圖1在action裡面引入這幾個檔案,圖2是檔案的目錄結構,之前用原生的調用執行都沒有問題
,引入到tp方法都找不到了。後面用import也不可以,求幫忙


回複討論(解決方案)

第15行,'dirname(__FILE__)/protocl'
你覺得__FILE__在字串裡能被解析嗎?拆分成dirname(__FILE__) . '/protocl'

匯入檔案路徑失敗,檢查下匯入的檔案

你 import 的參數是錯誤的,檔案的放置也不符合 import 的約定
你完全可以繼續使用 require,雖然不符合 TP 的規範

由於你沒有提及執行個體化對象時出現錯誤,因此可假定執行個體化是成功的
於是可推定執行個體化語句包含在被內嵌檔案中

發生 Call to a member function .... 錯誤的原因是:執行個體化的對象是全域的,在 tp 的方法中不能直接使用(這是基本的變數範圍問題)

第15行,'dirname(__FILE__)/protocl'
你覺得__FILE__在字串裡能被解析嗎?拆分成dirname(__FILE__) . '/protocl'


嗯,之前沒看到這個問題,改了也是不行

你 import 的參數是錯誤的,檔案的放置也不符合 import 的約定
你完全可以繼續使用 require,雖然不符合 TP 的規範

由於你沒有提及執行個體化對象時出現錯誤,因此可假定執行個體化是成功的
於是可推定執行個體化語句包含在被內嵌檔案中

發生 Call to a member function .... 錯誤的原因是:執行個體化的對象是全域的,在 tp 的方法中不能直接使用(這是基本的變數範圍問題)


                include 'Ice.php';include 'ZXINSserver.php';include 'protocl/ZXINUserInfoServant.php';$iceGridDefaultLocator='ZXIceGrid/Locator:default -h 192.168.1.61 -p 1201 -t 1000:default -h 192.168.1.160 -p 1201 -t 5000:default -h 192.168.1.61 -p 1102 -t 5000';$initData = new Ice_InitializationData;$initData->properties = Ice_getProperties();$initData->properties->setProperty("Ice.Default.Locator", $iceGridDefaultLocator);$communicator = Ice_initialize($initData);try{    //$p = $communicator->stringToProxy("ZXINStatusServant:tcp -h 192.168.1.60 -p 1111 -t 5000");    $p = $communicator->stringToProxy("ZXINUserInfoServant");    $user = ZXIN_ZXINUserInfoServantPrxHelper::checkedCast($p);

用了ice中介軟體,之前用原生的沒問題,現在顯示500server

錯誤資訊說你用一個Null 物件調用了stringToProxy,說明你沒有執行個體化某個對象,看看錯誤在哪個檔案的哪一行出了錯。

用include現在提示:Class 'Ice_InitializationData' not found,$initData = new Ice_InitializationData;這一句

Ice_InitializationData這個是ice.php裡面的

class Ice_InitializationData{    public function __construct($properties=null, $logger=null)    {        $this->properties = $properties;        $this->logger = $logger;    }    public $properties;    public $logger;}

Class 'Ice_InitializationData' not found沒有找到該類,是不是include的路徑有問題,類的檔案名稱正確嗎?

Class 'Ice_InitializationData' not found沒有找到該類,是不是include的路徑有問題,類的檔案名稱正確嗎?


確定引入正確,路徑檔案 檔案名稱都對的。目錄結構在1樓

你把你上面的路徑改為絕對路徑

vendor('Ice');
vendor('ZXIN.ZXINSserver');
vendor('ZXIN.ZXINUserInfoServant');
我現在把這些依賴檔案全部放到了Extend\Vendor裡面,現在頁面顯示500錯誤。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.