duanliu8998 2013-04-07 14:36
浏览 45
已采纳

如何在codeigniter中创建链接?

sorry I do not speak good English, use translator. How can I create links in codeigniter?

What if I want to use permalinks after?

I would have to change the whole system code every time you make a change in permalinks?

Is there a library that manufactures the links from these arguments and behave as configured dynamically?

For example if I want to change the system directory from:

http://testing/webapp/index.php

to:

http://production/index.php

Do I need to change all the code? What is the best practice for this?

  • 写回答

2条回答 默认 最新

  • drde3456 2013-04-07 14:44
    关注

    You can use codeingiter's methods base_url() and site_url().

    At first, you need to load the URL helper in your controller:

    $this->load->helper('url');
    

    See their definitions below (According to CI documentation, http://ellislab.com/codeigniter/user-guide/helpers/url_helper.html)


    site_url()

    Returns your site URL, as specified in your config file. The index.php file (or whatever you have set as your site index_page in your config file) will be added to the URL, as will any URI segments you pass to the function, and the url_suffix as set in your config file.

    You are encouraged to use this function any time you need to generate a local URL so that your pages become more portable in the event your URL changes.

    Segments can be optionally passed to the function as a string or an array. Here is a string example:

    echo site_url("news/local/123"); The above example would return something like:

    http://example.com/index.php/news/local/123
    

    Here is an example of segments passed as an array:

    $segments = array('news', 'local', '123');
    
    echo site_url($segments);
    

    base_url()

    Returns your site base URL, as specified in your config file. Example:

    echo base_url();
    

    This function returns the same thing as site_url, without the index_page or url_suffix being appended.

    Also like site_url, you can supply segments as a string or an array. Here is a string example:

    echo base_url("blog/post/123");
    

    The above example would return something like:

    http://example.com/blog/post/123
    

    This is useful because unlike site_url(), you can supply a string to a file, such as an image or stylesheet. For example:

    echo base_url("/_user_guide_src_ci/images/icons/edit.png");
    

    This would give you something like:

    http://example.com/images/icons/edit.png
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题