Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 需要名为“的控制器”;目录";内码点火器_Php_Url_Codeigniter - Fatal编程技术网

Php 需要名为“的控制器”;目录";内码点火器

Php 需要名为“的控制器”;目录";内码点火器,php,url,codeigniter,Php,Url,Codeigniter,我需要我的控制器名为“directory”,这样我就可以为我的业务目录页面设置URL,如“mysite.com/directory”。 但问题是“directory”是一个预定义的php类,所以我不能再次声明它。这是错误的 致命错误:无法重新声明类 目录在 C:\wamp\www\Logistica\system\application\controllers\directory.php 在线8 有没有一种方法可以将我的类和控制器重命名为其他名称,并且在URL中仍然保留“目录”?看一看 在您的情

我需要我的控制器名为“directory”,这样我就可以为我的业务目录页面设置URL,如
“mysite.com/directory”
。 但问题是“directory”是一个预定义的php类,所以我不能再次声明它。这是错误的

致命错误:无法重新声明类 目录在 C:\wamp\www\Logistica\system\application\controllers\directory.php 在线8

有没有一种方法可以将我的类和控制器重命名为其他名称,并且在URL中仍然保留“目录”?

看一看

在您的情况下,您需要的路线如下:

$route['directory']=“DirectoryImplementationClass”

看看

在您的情况下,您需要的路线如下:

$route['directory']=“DirectoryImplementationClass”


您可以使用.htaccess更改URL。 这意味着你的名字不是目录 然后可以使用重写规则更改URL中的名称

参考:
您可以使用.htaccess更改URL。 这意味着你的名字不是目录 然后可以使用重写规则更改URL中的名称

参考:

我已经在使用CI URL标识符,因此我的routes类已经有了一些修改。我的URL是“mysite.com/en/directory”,这是我的路由代码:$route['default_controller']=“home”$路由['(\w{2})/(.*)]='$2'$路由['(\w{2})]=$route['default_controller']$路由['\w{2}/目录']=“Dirclass”;但是上面的内容仍然与我的url不匹配。这给了我404页的错误。我已经有一段时间没有使用CI了,但是如果我记得正确的话,规则的顺序是很重要的。将运行第一条匹配路线,而不是最具体的路线。因此,如果$route['(\w{2})/(.*)]='$2'在$route['\w{2}/目录']='Dirclass'之前;在route.php文件中,它将查找directory.php类,第二个路由将永远不会执行。我已经在使用CI URL标识符,所以我的routes类已经有点修改。我的URL是“mysite.com/en/directory”,这是我的路由代码:$route['default_controller']=“home”$路由['(\w{2})/(.*)]='$2'$路由['(\w{2})]=$route['default_controller']$路由['\w{2}/目录']=“Dirclass”;但是上面的内容仍然与我的url不匹配。这给了我404页的错误。我已经有一段时间没有使用CI了,但是如果我记得正确的话,规则的顺序是很重要的。将运行第一条匹配路线,而不是最具体的路线。因此,如果$route['(\w{2})/(.*)]='$2'在$route['\w{2}/目录']='Dirclass'之前;在route.php文件中,它将查找directory.php类,第二个路由将永远不会执行。