[英]PHP classes and include
我有以下問題:
這是我的主文件index.php
。
<?php
class myClass
{
function myClass()
{
echo '[constructor]';
$this->myVar = '[i am making a test]';
$this->A();
}
function A()
{
echo '[function A works too]';
echo $this->myVar;
}
}
$test = new myClass;
?>
現在,我需要將function A
移到另一個PHP文件includes/function_a.php
,我可以在主文件中includes/function_a.php
include_once 。 原因是使我的主文件更小且更易於閱讀。
完成此操作的最佳實踐是EXTENDS?
編輯:
我已經使用EXTENDS完成了此操作:
index.php
<?php
include_once('includes/function_a.php');
class myClass extends anotherClass
{
function myClass()
{
echo '[constructor]';
$this->myVar = '[i am making a test]';
$this->A();
}
}
$test = new myClass;
?>
包括/function_a.php
<?php
class anotherClass
{
function A()
{
echo '[function A works too]';
echo $this->myVar;
}
}
?>
還有更好的主意嗎?
您在問題的結尾暗示了最佳方法。 您將需要創建一個父類,並讓您的“ myClass”擴展您的父類。 然后,“ myClass”將繼承父類的方法,並且父類可以在另一個文件中。 那是您要找的東西嗎?
除非您希望將myClass
用作基類,否則請勿使用其他類對其進行EXTEND
。
包含包含myClass
類的文件,並實例化myClass
對象以使用函數A
如果功能太長,請將其拆分為更多小功能。 它們必須有用,而不像functionA_part01 ...
例如。 getDataFromFile(),如果函數A讀取文件。
如果仍然需要創建新文件,則可以使用myClass擴展它們來創建一個抽象類。
也許您應該重新考慮您的課堂設計?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.