php 静态可变变量,php 可变变量、可变函数、可变类名

1.可变变量:

$a = 'hello';

$$a = 'world';

echo $$a . '
';

echo "$a ${$a} 
";

// 以下写法更准确并且会输出同样的结果

echo "$a $hello";

// 要将可变变量用于数组,必须解决一个模棱两可的问题。

// 这就是当写下$$a[1]时,解析器需要知道是想要$a[1]作为一个变量呢,还是想要$$a作为一个变量并取出该变量中索引为 [1] 的值。

// 解决此问题的语法是,对第一种情况用${$a[1]},对第二种情况用${$a}[1]。

2.可变函数:

function foo() {

echo "In foo()
";

}

function bar($arg = '') {

echo "In bar(); argument was '$arg'.
";

}

$func = 'foo';

$func();        // This calls foo()

$func = 'bar';

$func('test');  // This calls bar()

// 还可以利用可变函数的特性来调用一个对象的方法

class Foo

{

function Variable()

{

$name = 'Bar';

$this->$name(); // This calls the Bar() method

}

function Bar()

{

echo "This is Bar";

}

}

$foo = new Foo();

$funcname = "Variable";

$foo->$funcname();   // This calls $foo->Variable()

3.可变类名(PHP 5.3.0之后):

class MyClass

{

const constant = 'constant value';

private $context = 'my test';

static public function showConstant() {

echo  self::constant . "
";

}

public function showField() {

echo $this->context ;

}

}

echo MyClass::constant . "
";

$classname = "MyClass";

echo $classname::constant . "
"; // 调用常量

$classname::showConstant(); // 调用静态方法

$object = new $classname; // 创建对象

$object->showField();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值