[英]call a method from a class in php
这有点尴尬,但是我在从PHP的类中调用方法时遇到了问题,方法是这样的:我创建了具有其各自属性的类角色,代码为
<?php
class persona {
private $id;
private $nombre; //varchar(50)
private $correo; //varchar(50)
private $especialidad; //varchar(50)
private $nacionalidad; //varchar(50)
private $sueldo; //float
private $isss; //float
private $afp; //float
//getter
public function getId() {
return $this->id;
}
public function getNombre() {
return $this->nombre;
}
public function getCorreo() {
return $this->descripcion;
}
public function getEspecialidad(){
return $this->especialidad;
}
public function getNacionalidad(){
return $this->nacionalidad;
}
public function getSueldo(){
return $this->sueldo;
}
public function getIsss(){
return $this->isss;
}
public function getAfp(){
return $this->afp;
}
//setter
public function setNombre($nombre) {
$this->nombre = $nombre;
}
public function setCorreo($correo) {
$this->correo = $correo;
}
public function setEspecialidad($especialidad){
$this->especialidad=$especialidad;
}
public function setNacionalidad($nacionalidad){
$this->nacionalidad=$nacionalidad;
}
public function setSueldo($sueldo){
$this->sueldo=$sueldo;
}
public function setIsss($isss){
$this->isss=$isss;
}
public function setAfp($afp){
$this->afp=$afp;
}
public function __construct($nombre, $correo, $especialidad, $nacionalidad, $sueldo, $isss, $afp, $id=null) {
$this->nombre = $nombre;
$this->correo = $descipcion;
$this->especialidad = $especialidad;
$this->nacionalidad = $nacionalidad;
$this->sueldo = $sueldo;
$this ->isss = $isss;
$this->afp = $afp;
$this->id = $id;
}
public function mostrar(){
$mensaje="hola";
return $mensaje;
}
}
?>
如您在代码末尾所见,我创建了一个称为mostrar的函数,其唯一目的是显示一条消息,现在我想从不同的类中调用此方法,我的代码是
<?php
require_once('persona.php');
class prueba{
private $person;
public function __construct(){
$person= new persona("el nombre","el correo", "la especialidad", "la nacionalidad", "el sueldo", "el isss", "el afp");
mostrando();
}
public function mostrando(){
$person->mostrar();
}
}
?>
但是,当我调试它在浏览器中不显示任何内容时,我想显示来自person.php类的消息,您能告诉我代码中的问题是什么吗?
可变范围:
$ person!== $ this-> person
class prueba{
private $person;
public function __construct(){
$this->person= new persona("el nombre","el correo", "la especialidad", "la nacionalidad", "el sueldo", "el isss", "el afp");
$this->mostrando();
}
public function mostrando(){
echo $this->person->mostrar();
}
}
$this->person
是一个对象属性,可从类中的所有方法访问。
$person
是一个局部变量,只能从定义它的方法/函数访问(除非作为参数传递给其他方法/函数)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.