Sto lavorando con Views 2 in Drupal 6 e ho difficoltà a trovare la documentazione sui metodi dell'oggetto View. Esiste una funzione PHP come print_r che restituisce metodi e campi?print_r per ottenere metodi oggetto in PHP?
risposta
Credo che stiate cercando get_class_methods. In questo caso, anche get_class_vars potrebbe interessarti.
Il Reflection API potrebbe interessarti (se non è eccessivo). In particolare: -
<?php
Reflection::export(new ReflectionClass('View'));
?>
Consultare il manuale per ulteriori esempi di approfondimento.
Più flessibile di get_class_methods perché puoi anche ottenere parametri e commenti. – Kris
Anche a portata di mano: 'get_class ($ oggetto);' Quando si ha a che fare con un oggetto generato da una classe generata, è possibile passarlo al costruttore di ReflectionClass. Vedere http://php.net/manual/en/function.get-class.php –
Oltre alle funzioni citate da Mathachew è anche possibile dare un'occhiata a Reflection, in particolare la classe ReflectionClass
.
$class = new ReflectionClass('YourViewClass');
$class->getMethods();
$class->getProperties();
Ho scritto questa semplice funzione che non solo mostra le modalità di un determinato oggetto, ma mostra anche le sue proprietà, incapsulamento e alcune altre informazioni utili come note di rilascio se dato.
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>";
}
Per mostrarti come funziona ho creato qualche classe di esempio casuale. Consente di creare una classe denominata Persona e posto alcune note di rilascio appena sopra la dichiarazione di classe:
/**
* 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;
}
}
Ora ti permette di creare un'istanza di una persona e avvolgere con la nostra funzione.
$Wictor = new Person("27.04.1987", 170, 70, "Wictor");
TO($Wictor);
Queste informazioni uscita volontà circa il nome della classe, parametri e metodi, tra cui informazioni incapsulamento e numero ei nomi dei parametri per ciascun metodo, posizione metodo e le righe di codice in cui esiste. Vedere l'output qui sotto:
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 ]
Spero che lo troverai utile. Saluti.
- 1. php var_dump() vs print_r()
- 2. php print_r nice table
- 3. PHP ottenere metodi statici
- 4. Ricreare array PHP originale dall'uscita print_r
- 5. PHP print_r funziona, ma json_encode ritorna vuota
- 6. esclude la proprietà privata da print_r o oggetto?
- 7. Qual è l'equivalente JavaScript di var_dump o print_r in PHP?
- 8. utilizzando un risultato di matrice print_r PHP in javascript/jquery
- 9. scrive l'output di print_r in un file txt. PHP
- 10. Laravel - print_r in twig view
- 11. Come Console.Log, Print_R(), Debug.Trace in C#?
- 12. tipo di oggetto suggerimento in php
- 13. Alternatore costruttore per metodi statici in PHP
- 14. Metodi statici in PHP
- 15. Trova metodi Oggetto R
- 16. Oggetto padre in php
- 17. come convertire oggetto in stringa in PHP
- 18. Cosa significa "1" alla fine di una dichiarazione php print_r?
- 19. Ottenere dimensioni in memoria di un oggetto in PHP?
- 20. Ottenere tutti i metodi di istanza di un oggetto CoffeeScript
- 21. Chiamare metodi php con stringhe
- 22. Ottenere JSON oggetto chiamando un URL con parametri in PHP
- 23. iterazione attraverso un oggetto stdClass in PHP
- 24. array PHP casting per oggetto
- 25. difficilmente nella comprensione di print_r/var_dump per l'oggetto
- 26. Come elencare tutti i metodi per un oggetto in Ruby?
- 27. Metodi diversi per trasmettere un oggetto in Java
- 28. diversi metodi per istanziare un oggetto in C++
- 29. Print_r non restituisce nulla; var_dump mostra NULL
- 30. Ottenere oggetto JSON per attributo
Avrebbe una precedenza se non fosse per le restrizioni di SO. Buon lavoro. – mcandre