01/10/2018, 08:19

Tên file và tên class trong PHP

Mình có một file là home.php trong file này có một class tên là Home.

$app_path = "application";
        $controller_path = "controllers";
        $view_path = "views";
        $model_path = "models";
        if (isset($_GET["c"]))
        {
            $controller = $_GET["c"];
            require("$app_path/$controller_path/$controller.php");
            $c = new $controller;
            $c -> index();
        }
        else
            echo "Null Controller";

Khi mình nhập URL là index.php?c=home, thì $controller =“home” và cái mình thắc mắc là tại sao code vẫn đúng khi khởi tạo $c = new $controller; vì class trong file home.php là Home chứ không phải home.
Mọi người giúp mình giải đáp thắc mắc này với

Tên Gì Cũng Được viết 10:32 ngày 01/10/2018

$c = new $controller;
tương đương với
$c = new home;

nó sẽ dịch $controller ra chữ home, rồi dùng chữ home đó làm tên class và khởi tạo object của class home

thử đọc này cho dễ hiểu nhé:

<?php $var_name = "message"; $message = "chao dnh"; echo $$varname; // tuong duong voi: echo $message; //ket qua la: "chao dnh" ?>
Vô Thin viết 10:27 ngày 01/10/2018

Cái đó gọi là vé ri ờ bồ vé ri ờ bồ (nghe như có hai con bồ cùng cùng lúc đi chung với thằng cha viết code )

Có một chương rất rõ ràng mà http://php.net/manual/en/language.variables.variable.php , đừng nói là lười đọc sách nghen.

Dân học PHP ít nhất phải tụng xong cuốn PHP Manual do php.net phát hành rồi mới tính tiếp.

Bài liên quan
0