2011-03-05 29 views
1

我有一些问题,学习如何在codeigniter中编程正确的URL ...我发现控制器名称不能有连字符,只有下划线。CodeIgniter - 正确格式化的URL

我告诉你在做的过程,如果有人能让我知道我哪里会出错,那会很好。

好吧,我的看法我有一个链接到一个页面的按钮,例如about_us

<a href="<?php echo base_url().'about_us'; ?>">About Us</a> 

这然后加载about_us.php控制器,控制器里面我有

$this->load->view('about_us'); 

这则加载在视图about_us.php并显示页面。

我发现它没有下划线的问题,但我想使用连字符代替下划线。

当我尝试和呼叫控制器about-us.php它不工作,当我重新命名类的头类公司,我们扩展控制器{它不工作:S

我真的很困惑如何让好看的URL。

任何建议将是盛大的。

Cheers

回答

1

PHP类的名称中不能有连字符。这就是为什么命名你的课关于我们没有工作。

如果你在URL中设置了连字符,你应该看看CodeIgniter的自定义URI路由。

http://ellislab.com/codeigniter/user_guide/general/routing.html

见正则表达式的部分向下靠近页面的底部。您可以设置一个正则表达式来将URL中的连字符替换为下划线 - 这样,用户将看到连字符,但CodeIgniter将使用下划线。

+0

感谢那... url_title()函数怎么样...这是否做同样的事情? ...我很不确定这 – Cecil 2011-03-05 10:36:02

+0

url_title()只是用于生成链接,它不会改变任何关于正在使用的实际URL。 – 2011-03-05 10:53:06

+1

我也发现了这个,它提供了有关实现类似于您所寻找的解决方案的详细信息:http://stackoverflow.com/questions/2428134/codeigniter-routes-regex/2432405#2432405 – 2011-03-05 10:53:55