2010-10-28 72 views
0

我得到這個非常糟糕的錯誤。我試圖從PHP.net複製示例類。班級工作,但我似乎無法讓它包括正確的。我的索引文件包含users.class.php,然後是包含調用該類的content.php。PHP類導致錯誤

錯誤:

Fatal error: Class 'A' not found in X:\xxxxx\xxxx\xxxxx\content.php on line 2

的index.php:

<?php 
    require('users.class.php'); 
    $a = new A(); 
    require('content.php'); 
?> 

content.php:

<?php 
    echo $a->foo(); 
?> 

users.class.php:

<?php 
    class A 
    { 
     function foo() 
     { 
     return 'hello world'; 
     } 
    } 
?> 
+0

您確定您包含正確的'users.class.php'嗎? – 2010-10-28 02:10:42

回答

1

嗯...我的猜測是,之前的預處理器已經users.class.php充分閱讀正在執行的行

echo $a->foo(); 

嘗試添加該行content.php:

require_once("users.class.php"); 

上述echo...線。

此外,您也可以將您的index.php require更改爲require_once。這將確保您的類在代碼執行前被讀入,並且您不會收到任何錯誤,說明文件已包含在內。

+0

mmm ..沒有任何意義。代碼被阻塞,就像瀏覽器上的js一樣,根據定義,* require *或* include *語句只是在繼續執行之前「粘貼」(包含)代碼 – 2010-10-28 02:16:57

+0

我覺得非常愚蠢,我花了一個小時工作在一個錯字。我的問題是我需要錯誤的文件。 – Lienau 2010-10-28 02:20:09

0

第一:我跑你的代碼和工程

第二:錯誤是沒有意義的,因爲content.php不會不包含「A」級的聲明,在任何情況下,錯誤應該說這個類在「index.php」文件中找不到。

請檢查隱藏的字符,然後再試一次