如何将 php 变量传递给另一个 php 文件

How To Pass php Variable To another php file

我创建了一个自定义路由器。例如

$istek = $_SERVER['REQUEST_URI'];

switch ($istek) {
    case '/' :
        $title = "Anasayfa";
        require base . 'views/index.php';
        break;

所以我想用 $_GET 传递示例 id 变量。但是路由器阻止它并重定向到 404 页面。我怎样才能传递这个变量而不出现任何错误或重定向到 404?

原因是 $_SERVER['REQUEST_URI'] 包含所有内容,而不仅仅是 /,因此您的切换将失败。

要修复,请使用 parse_url/PHP_URL_PATH,而 ?id= 将在 PHP_URL_QUERY.

所以你可以使用类似这样的东西从 $_SERVER['REQUEST_URI']:

得到你想要的东西
<?php
// example
$_SERVER['REQUEST_URI'] = '/controller/action?id=123';

$uri = $_SERVER['REQUEST_URI'];

$uri = parse_url($uri);

$route = explode('/', ltrim($uri['path'], '/'));
print_r($route);

parse_str($uri['query'], $query);
print_r($query);

结果:

Array
(
    [0] => controller
    [1] => action
)
Array
(
    [id] => 123
)

https://3v4l.org/UMFQF