PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPグローバルクラスへのアクセス


はじめに

PHPパーサーは、クラス名や関数名などの非公式の識別子を検出すると、現在の名前空間に解決されます。したがって、PHPの事前定義されたクラスにアクセスするには、接頭辞 \を付けて完全修飾名で参照する必要があります。 。

組み込みクラスの使用

次の例では、新しいクラスが事前定義されたstdClassを基本クラスとして使用します。 \の前に付けて参照します グローバルクラスを指定するには

<?
namespace testspace;
class testclass extends \stdClass{
   //
}
$obj=new testclass();
$obj->name="Raju";
echo $obj->name;
?>

インクルードされたファイルは、デフォルトでグローバル名前空間になります。したがって、インクルードされたファイルからクラスを参照するには、プレフィックスとして\

を付ける必要があります。

#test1.php
<?php
class myclass{
   function hello(){ echo "Hello World\n";}
}
?>

このファイルは別のPHPスクリプトに含まれており、そのクラスは\

で参照されます。

このファイルが別の名前空間に含まれている場合

#test2.php
<?php
include 'test1.php';
class testclass extends \myclass{
function hello(){
   echo "Hello PHP\n"; }
}
$obj1=new \myclass();
$obj1->hello();
$obj2=new testclass();
$obj2->hello();
?>

出力

これは次の出力を出力します

Hello World
Hello PHP

  1. PHPのget_class_methods()関数

    get_class_methods()関数は、クラスメソッドの名前を取得します。 name_of_classで指定されたクラスに定義されたメソッド名の配列を返します。エラーの場合、NULLを返します。 構文 get_class_methods(class) パラメータ name_of_class −クラス名。必須です! 戻る get_class_methods()関数は、name_of_classで指定されたクラスに対して定義されたメソッド名の配列を返します。エラーの場合、NULLを返します。 例 以下は例です- <?php class Demo {   &n

  2. PHPのclass_exists()関数

    PHPのclass_exists()関数は、クラスが定義されているかどうかをチェックします。クラスが定義済みクラスの場合はTRUEを返し、そうでない場合はFALSEを返します。 構文 class_exists(class, autoload) パラメータ クラス −クラスの名前。 自動読み込み −デフォルトで__autoloadを呼び出すかどうか 戻る class_exists()関数は、クラスが定義されたクラスの場合はTRUEを返し、そうでない場合はFALSEを返します。 例 以下は例です- <?php if (class_exists('Demo'