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 に答える