Tengo varias CONST definidas en algunas clases, y quiero obtener una lista de ellas. Por ejemplo:¿Puedo obtener CONST definido en una clase de PHP?
class Profile {
const LABEL_FIRST_NAME = "First Name";
const LABEL_LAST_NAME = "Last Name";
const LABEL_COMPANY_NAME = "Company";
}
¿Hay alguna manera de obtener una lista de las Constituciones de la clase definida en el Profile
? Por lo que puedo decir, la opción más cercana (get_defined_constants()
) no hará el truco.
Lo que realmente necesito es una lista de los nombres de constantes - algo como esto:
array('LABEL_FIRST_NAME',
'LABEL_LAST_NAME',
'LABEL_COMPANY_NAME')
O:
array('Profile::LABEL_FIRST_NAME',
'Profile::LABEL_LAST_NAME',
'Profile::LABEL_COMPANY_NAME')
O incluso:
array('Profile::LABEL_FIRST_NAME'=>'First Name',
'Profile::LABEL_LAST_NAME'=>'Last Name',
'Profile::LABEL_COMPANY_NAME'=>'Company')
utilizando la reflexión, y una ReflectionClass en Cl, puede utilizar las getConstants función http://nz.php.net/manual /es/class.reflectionclass.php –
[La reflexión será tu salvador] (http://se2.php.net/manual/en/reflectionclass.getconstants.php). –
Puede hacer esto usando [reflection] (http://nz.php.net/oop5.reflection). Busque "Imprimir constantes de clase" en esa página para ver un ejemplo. – n3rd