コードは次のとおりです。
<?php
class class1{
public function fun1
{
function fun2
{
echo 'Hello';
}
}
}
class class2{
//calling fun2
}
?>
class2で関数fun2を呼び出すことはできますか?
コードは次のとおりです。
<?php
class class1{
public function fun1
{
function fun2
{
echo 'Hello';
}
}
}
class class2{
//calling fun2
}
?>
class2で関数fun2を呼び出すことはできますか?
はい、注文が正しく維持されていれば可能です。
class test1
{
public function doSomething()
{
function doSomethingElse()
{
echo "doSomethingElse called\n";
}
}
}
class test2
{
public function doSomething()
{
doSomethingElse();
}
}
$t1 = new test1();
$t1->doSomething();
$t2 = new test2();
$t2->doSomething(); // "doSomethingElse called\n";
doSomethingElse(); // "doSomethingElse called\n";
を呼び出す$t1->doSomething();
と、ネストされたdoSomethingElse()
関数がロードされます。最初に呼び出さなかった場合$t1->doSomething();
、ネストされた関数を呼び出そうとすると、まだ存在しないためエラーが発生します。
// 簡単な答えです。これが可能な方法/理由の詳細については、マニュアルを参照してください。