Drupal 6のViews 2で作業しています.Viewオブジェクトのメソッドに関するドキュメントを見つけるのが難しいです。メソッドとフィールドを出力するprint_rのようなPHP関数はありますか?print_r?
print_r?
答えて
私はあなたがget_class_methodsを探していると思います。この場合、get_class_varsも興味深いかもしれません。
Reflection APIはあなたにとって興味深いかもしれません(過度でない場合)。具体的には次のとおりです。 -
<?php
Reflection::export(new ReflectionClass('View'));
?>
詳しくは、マニュアルを参照してください。
パラメータやコメントも取得できるので、get_class_methodsより柔軟です。 – Kris
また便利です: 'get_class($ object);' 生成されたクラスから生成されたオブジェクトを扱うときに、これをReflectionClassコンストラクタに渡すことができます。 http://php.net/manual/en/function.get-class.phpを参照してください。 –
Mathachewに記載されている機能の他に、Reflection、特にReflectionClass
クラスも参照できます。
$class = new ReflectionClass('YourViewClass');
$class->getMethods();
$class->getProperties();
私は、指定されたオブジェクトのメソッドを表示するだけでなく、与えられた場合、そのプロパティ、カプセル化とリリースノートのようないくつかの他の有用な情報を表示するだけでなく、この単純な関数を書きました。
function TO($object){ //Test Object
if(!is_object($object)){
throw new Exception("This is not a Object");
return;
}
if(class_exists(get_class($object), true)) echo "<pre>CLASS NAME = ".get_class($object);
$reflection = new ReflectionClass(get_class($object));
echo "<br />";
echo $reflection->getDocComment();
echo "<br />";
$metody = $reflection->getMethods();
foreach($metody as $key => $value){
echo "<br />". $value;
}
echo "<br />";
$vars = $reflection->getProperties();
foreach($vars as $key => $value){
echo "<br />". $value;
}
echo "</pre>";
}
どのように動作するかを示すために、私はいくつかのランダムなサンプルクラスを作成しました。人というクラスを作成し、ちょうどクラス宣言の上にいくつかのリリースノートを配置することができます:
/**
* DocNotes - This is description of this class if given else it will display false
*/
class Person{
private $name;
private $dob;
private $height;
private $weight;
private static $num;
function __construct($dbo, $height, $weight, $name) {
$this->dob = $dbo;
$this->height = (integer)$height;
$this->weight = (integer)$weight;
$this->name = $name;
self::$num++;
}
public function eat($var="", $sar=""){
echo $var;
}
public function potrzeba($var =""){
return $var;
}
}
は今、人のインスタンスを作成し、当社の機能とそれを包むことができます。
$Wictor = new Person("27.04.1987", 170, 70, "Wictor");
TO($Wictor);
カプセル化情報と数と、各メソッドのパラメータの名前は、方法の位置と、それが存在するコードのラインを含むクラス名、パラメータおよび方法に関するこの意志の出力情報は、。以下の出力を参照してください。
CLASS NAME = Person
/**
* DocNotes - This is description of this class if given else it will display false
*/
Method [ public method __construct ] {
@@ C:\xampp\htdocs\www\kurs_php_zaawansowany\index.php 75 - 82
- Parameters [4] {
Parameter #0 [ $dbo ]
Parameter #1 [ $height ]
Parameter #2 [ $weight ]
Parameter #3 [ $name ]
}
}
Method [ public method eat ] {
@@ C:\xampp\htdocs\www\kurs_php_zaawansowany\index.php 83 - 85
- Parameters [2] {
Parameter #0 [ $var = '' ]
Parameter #1 [ $sar = '' ]
}
}
Method [ public method potrzeba ] {
@@ C:\xampp\htdocs\www\kurs_php_zaawansowany\index.php 86 - 88
- Parameters [1] {
Parameter #0 [ $var = '' ]
}
}
Property [ private $name ]
Property [ private $dob ]
Property [ private $height ]
Property [ private $weight ]
Property [ private static $num ]
希望すると便利です。よろしく。
- 1. ますprint_r
- 2. php print_r nice table
- 3. PHP $ _POST配列print_r
- 4. Laravel - print_r with twig view
- 5. Java版のPrint_r(レスポンス)
- 6. ますprint_r()PHP関数
- 7. var_dump、var_export&print_rの相違点
- 8. PHPモジュロと結果のprint_r?
- 9. PHP - print_r()liveの表示方法
- 10. Console.Log、Print_R()、C#でのDebug.Traceの方法は?
- 11. print_r配列キーの疑問符
- 12. 外部PHPエコー/ますprint_rブラウザ
- 13. PHP print_r num_rows => 9、空白のページ
- 14. print_rは時々動作しますか?
- 15. ob_startでprint_rを使用する
- 16. PHPますprint_rと静的メンバ
- 17. あなたがしますprint_r出力
- 18. 配列表記の理解(特にmysql_fetch_arrayとprint_r)
- 19. 配列を持たない値を表示する(print_r)
- 20. php var_dump($ object)またはprint_r($ object)をログファイルに追加
- 21. print_r $ _POST配列を作成する方法は?
- 22. 配列をforeach()ループから戻し、print_r()を返します
- 23. のvar_dump()としますprint_r()の出力異なる値が
- 24. echo json_encodeがprint_rと競合しており、PHPのecho
- 25. print_r $ _SESSIONオブジェクトにアクセスできますが、アクセスできません。
- 26. PHPのprint_r()メソッドの空白を制御する方法
- 27. print_r(PDO :: getAvailableDrivers())の戻り値は何ですか;コマンド平均
- 28. print_rからのストライプの計画額の値の検索
- 29. PHPますprint_r($ _ SESSION)ではない、私は
- 30. C++はPHPのprint_r()と同等ですか?
SOの制限がない場合は、アップしますか?よくできました。 – mcandre