это моя первая система маршрутизации на PHP. как видите, это очень просто. какие-нибудь советы или подсказки, которые могут сделать это лучше? Я хочу сделать его лучше, чтобы я мог использовать его на реальных веб-сайтах. сначала я включаю соединение с базой данных, затем получаю URL-адрес, если URL-адрес имеет специальный индекс, такой как идентификатор сообщения или имя сообщения, затем включаю post.php или, если $ sp_link [4] == profile, затем загружаю profile.php. КОД PHP:
<?php
require_once 'inc/header.php';
include_once 'inc/nav.php';
$actual_link = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
// echo $actual_link;
$sp_link = explode("/", $actual_link);
print_r($sp_link);
$sql ='SELECT * from posts WHERE post_id=? AND post_name=?';
$stmt=$pdo->prepare($sql);
$stmt->execute([@$sp_link[5], @$sp_link[6]]);
$post=$stmt->fetch();
if ($sp_link[4] == 'blog' && @$sp_link[5] == '' ) {
// @include 'blog.php';
//$page_title = $post->post_title;
}
else if ($sp_link[4] == 'profile' && @$sp_link[5] == '' ) {
@include_once 'profile.php';
}
else if ($sp_link[4] == 'login' && @$sp_link[5] == '' ) {
@include 'login.php';
$page_title = 'ورود';
}
else if ($sp_link[4] == 'signup' && @$sp_link[5] == '' ) {
@include 'signup.php';
$page_title = 'ورود';
}
else if ($sp_link[4] == 'blog' && @$sp_link[5] == $post->post_id && @$sp_link[6] == $post->post_name) {
@include 'post.php';
$page_title = $post->post_title;
}
else if (($sp_link[4] == '' || $sp_link[4] == 'index' || $sp_link[4] == 'index.php') && @$sp_link[5] == '') {
$page_title = 'سکان آکادمی | آموزش برنامه نویسی';
include 'home.php';
}
else if (($sp_link[4] == 'blog' && $sp_link[5] == '12342') && @$sp_link[6] == '') {
include_once 'post.php';
} else {
include_once '404.php';
}
а это htaccess
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^.*$ ./index.php
он работает, но структура настолько проста, что мне стыдно показывать это кому-либо!






Если этот код работает, и вы хотите узнать мнение о нем, вам следует подумать о переносе его в codereview.