2016-08-13 151 views
1

有我的PHP文件結構:PHP的包括()錯誤從另一個文件包含當

實踐PHP

  • 的index.php
  • 模型
    • model.php
  • 連接器
    • connectionUtility.php

在模型PHP我寫: 包括 '../connector/connectionUtility.php'; index.php 包含'model/model.php';


當我運行 'model.php',沒有任何錯誤,但是當我運行 '的index.php' 瀏覽器顯示:

要求(../連接器/ connectionUltility .php):未能打開流:沒有這樣的文件或目錄在C:\ wamp64 \ www \ php-practice \ model \ model.php

致命錯誤:require():失敗打開需要'../connector /connectionUltility.php'(include_path ='.; C:\ php \ pear')in C:\ wamp64 \ www \ php-practice \ model \ model.php


我發現了我的問題的答案。如果我寫: 在'model.php'中包含'connector/connectionUtility.php',那麼我只需要在'index.php'中包含'model.php'。系統仍然會理解。


謝謝大家的幫助。

+1

使用完整路徑而不是相對路徑通常可以解決這類問題。即:'include($ _SERVER ['DOCUMENT_ROOT']。'/connector/connectionUltility.php');'或者在使用'include'前使用'set_include_path'# – RamRaider

+1

@ Ilaya Raja S當你放入'..'時,文件夾返回在'index.php'中,它試圖從'www'方向包含它 – Tonza

+0

[無法打開流:沒有這樣的文件或目錄]可能的重複(http://stackoverflow.com/questions/36577020/failed-開放流沒有這樣的文件或目錄) –

回答

0

嘗試的index.php使用../connector/connectionUltility.phpmodel.phpconnector/connectionUltility.php

實踐PHP

  • 的index.php
  • 模型
    • model.php
  • 連接器
    • connectionUtility。PHP

../connector/connectionUltility.php..意味着它進入一個文件夾向後所以在model.php它可以追溯到比它進入connection/connectionUtility.php

但是,當你在index.php使用它已在practise-phppractice-php方向方向和因爲點..它回到www方向比它試圖去connector/connectionUltility.php

對不起,對不起英文

+0

你能解釋爲什麼錯誤顯示出來嗎? –

+0

'@ @ Ilaya Raja S當你把..它去了一個文件夾,所以在index.php它試圖包括它從www方向「'有道理,謝謝 –

+0

謝謝,它的工作,但它可以是一個問題,如果我在connectionUtility.php中包含了另一個文件。無論如何可以解決項目樹中每個文件的問題嗎? – Gii