0

嗨朋友你能澄清一下下面这段代码有什么区别吗:

<?php
class student {
    function stu() {
        echo "Hi Friends";
    }
}

//difference between this
$s = new student();
$s -> stu();

//and this
$s1 = 'student';
$s1 -> stu(); 

$s = new student();和有什么区别$s1 = 'student';

4

2 回答 2

4

$s = new student();创建一个新的类实例student并将其存储到$s变量中。

$s1 = 'student';将字符串存储student到变量$s1中。最后一行$s1->stu();给出了一个错误,因为你不能在字符串上调用方法。

我对您的建议是获取一本 PHP 初学者书籍并阅读它,这样您将掌握基础知识。

于 2012-12-10T07:42:36.283 回答
0

你一定是说:

$instance = new myclass();

$type = 'myclass';
$instance = new $type;

如果这是您的意思,那么没有区别。当您希望动态生成类名时使用后者。

于 2012-12-10T07:43:25.357 回答