سلام استاد من ویدیو هارو طبق اموزش شما پیش رفتم و کدهارو هم تطبیق داادم اما url رو که وارد میکنم خطای زیر و میده
404 file does not exist
<?php
namespace System\router;
use ReflectionMethod;
class Route
{
private $currentRoute;
public function __construct()
{
global $currentRoute;
$this->currentRoute = explode('/', $currentRoute);
}
public function run()
{
$path = realpath(dirname(__FILE__) . "/../../application/controllers/" . $this->currentRoute[0] . ".php");
var_dump($path);
if (!file_exists($path)) {
echo "404 file does not exist";
exit;
}
require_once($path);
sizeof($this->currentRoute) == 1 ? $method = "index" : $method = $this->currentRoute[1];
$class = "Application\Controllers\\" . $this->currentRoute[0];
$object = new $class();
if (method_exists($object, $method)) {
$reflection = new ReflectionMethod($class, $method);
$parameterCount = $reflection->getNumberOfParameters();
if ($parameterCount <= count(array_slice($this->currentRoute, 2))) {
call_user_func_array(array($object, $method), array_slice($this->currentRoute, 2));
} else {
echo "404 parameter error";
}
} else {
echo "404 method error";
}
}
}
سلام دوست عزیز
اگه چک کنید بعضی از متغییر ها اسمشون رو مثل کدهای استاد نذاشتید بهتره این کارو انجام بدید
متغییر currentRoute رو با کدهای استاد چک کنید اگه اشتباه نکنم فکر کنم مشکل از این متغییر است
دوست گرامی اسم متغییر یه چیز دلخواهه بنده لاراول کار میکنم تجربه انتخاب این اسامی و این چیزا رو دارم مشکلی
از این بابت نیست فقط الان عجیبه برام حتی کد های مهندس رو هم جایگزین میکنم خطا میده
من نگفتم که مشکل از اسم متغییر هست گفتم بهتره مثل استاد بزارید چیزی که خود استاد گفتن
چون من کدهای شما رو با کد خودم جایگزین کردم فقط current_route رو تغییر دادم درست بود و کار کرد فقط نظرمو دادم شاید بهتون کمکی کرده باشم...
موفق باشید
ممنون از نظرتون ولی باور کنید من کدهای استاد رو هم گذاشتم افاقه نکرد اصلا ورژن php شما چنده؟
من اخرین ورژن هست PHP 8.0.3
پوشه system و فایل config رو یه نگاه کنید شاید مشکل از اونجا باشه چون current_route رو اونجا تعریف کردیم
من ورژنم 7.4 هست والا نمیدونم چرا اذیت میکنه
منم دقیقا همین مشکل رو دارم. همه چی رو عین استاد زدم
با سلام خدمت شما همراه عزیز
دوستمون درست فرمودن برای اموزش باید تمامی موارد رو مثل مدرس پیش برید چون دراینصورت وقتی به مشکل بخورید پیدا کردنش سخت هست مثل همین الان
شما باید خط به خط با کدهای بنده مقایسه کنید تا مشکل پیدا بشه و ببینید به چه دلیل وارد
بخش نمایش
not found میشید
اگر فایلی وابسته هم هست باید اونارو هم بررسی کنید
استاد من فایل خودتون رو هم ران کردم باز همین ارور رو داد
فایل htaccess رو چک کنید
اسم فولدرهاتونو لوکال هاستتون رو باید چککنید دقیقا url مثل بنده باشه دقیق
با سلام دوست عزیز برای اینکه مشکل برطرف بشه باید تو متغیر کلاس قبل Application یه \ اضافه کنید.