我想知道这是否可行,虽然我很有信心可能有更好的方法。我有这个脚本结构:
class Mother {
public function __construct() {
// script here
}
public function writer() {
if() {
// if true
} else {
// call function hello
}
}
public function hello() {
echo "Hello there.";
}
}
如何从writer()调用hello()?感谢。
答案 0 :(得分:3)
喜欢这样
public function writer() {
$this->hello();
}
$this
是类的保留变量,任何实例化的类(通过new myClass
调用)都可以访问$this
,但是如果你使用静态类,你会需要将该函数定义为静态并使用static::myFunction
方法,例如:
class exampleClass {
public static function exampleFunc() {
static::hello();
}
public static function hello() {
echo "Hello!";
}
}
exampleClass::exampleFunc();
答案 1 :(得分:0)
// call function hello
$this->hello();
此外,您的其他功能在语法上是错误的。注意括号。
public function writer() {
public function hello() {
答案 2 :(得分:0)
在我的PHP 5.3.4安装
上public function hello() { }
似乎可以通过两种方式从另一种实例方法获得
$this->hello()
self::hello()
显然,
$this
当将公共方法作为类方法
调用时,对实例的引用将不可用