看板 PHP 關於我們 聯絡資訊
各位板友大家好, 小弟是php超新手.. 有個奇怪的問題想請教一下, 不曉得在php內,如果把父類別及子類別分拆為2個php檔, 那麼url輸入子類別所在的php檔時,將會出現.. Fatal error: Class 'Person' not found in C:\xampp\htdocs\test\test1.php on line 5 其中,Person是父類別。 不曉得該怎麼設定讓子類別認得? http://www.5idev.com/p-php_class_extends.shtml 懇請板上先進不吝賜教,謝謝:) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.160.218.65 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1502014894.A.40B.html ※ 編輯: BIAO (118.160.218.65), 08/06/2017 18:27:14
MarcoReus: include 'person.php' 08/06 18:29
M大謝謝您, 剛才增加include 'person.php'後, 顯示另一個錯誤... --分隔線-- Parse error: syntax error, unexpected 'class' (T_CLASS) in C:\xampp\htdocs\test\test1.php on line 6 --分隔線-- person.php的內容為.. 「<?php class Person { var $name; var $age; function say() { echo "我的名字叫:".$this->name."<br />"; echo "我的年龄是:".$this->age; } } ?> 」 --分隔線-- test1.php的內容為.. 「 <?php include 'Test2.php' // 类的继承 class Student extends Person { var $school; //学生所在学校的属性 function study() { echo "我的名子叫:".$this->name."<br />"; echo "我正在".$this->school."学习"; } } $t1 = new Student(); $t1->name = "张三"; $t1->school = "人民大学"; $t1->study(); ?> 」 --分隔線-- 再麻煩您解惑,謝謝>//< ※ 編輯: BIAO (118.160.218.65), 08/06/2017 18:36:32
MarcoReus: 欸 分號漏打了... include 'person.php'; 08/06 18:38
謝謝您,的確是分號漏掉,冏.. 如果不用include的方式的話,是不是還有別的方式呢? 比如說有點像是默認的全局變量. 因假設我有個class的php檔會有很多人需要include的話, 每頁都要include是很不方便的. 再麻煩大大指導,感恩.. ※ 編輯: BIAO (118.160.218.65), 08/06/2017 18:44:51 先補上網路上找到的方法.. 不太確定文章內提及的方式好不好!!(還有修改php.ini檔的include path) http://justericgg.logdown.com/posts/196891-php-series-autoload ※ 編輯: BIAO (118.160.218.65), 08/06/2017 18:57:16
MarcoReus: 通常都會寫個類似header的php檔來處理要include的files 08/06 19:04
MarcoReus: 然後每支檔案就通通include或require那支header檔 08/06 19:05
BIAO: 謝謝M大詳細解說!受教了^^ 08/06 19:10
tkdmaf: 現今的作法,是用autoload來自動引入class 08/06 22:08
BIAO: 謝謝t大詳細解說噢! :) 08/07 09:53