۱ امیر ضیائی
autoload و dynamic call
جامعه پی اچ پی ایجاد شده در ۰۱ مرداد ۱۳۹۹

سلام 

استاد با Autoload  نمیتونیم شی رو  Dynamic بسازیم؟

مثال:

$class = $_GET['class'] ?? '';
$obj = new $class;

توی این کد namespace رو تشخیص نمیده.

سلام 

شما برای اینکه بتونید کلاسی رو با استفاده از autoload از اون شی بسازید باید کلاس رو حتما use کنید تا بتونید ازش استفاده کنید.

داینامیک هم امکان پذیر به کد زیر دقت کنید باید چنین چیزی رو شما انجام بدین از کدی که خودتون فرستادین من استفاده کردم و نیم اسپیس کلاس رو داخل ارایه get ذخیره کردم و بعد بهش دسترسی پیدا کردم.

<?php
require_once "../vendor/autoload.php";
 $_GET['class']="App\\Http\\Controllers\\HomeController";
$class = $_GET['class'] ?? '';
$obj = new $class();
$obj->index();

 

میثم نصرتی ۰۴ مرداد ۱۳۹۹، ۱۴:۱۶