php搜索和替换功能无法正常工作

时间:2016-05-26 12:56:28

标签: php codeigniter replace

我正在开发一个已经由另一个开发人员开发的php项目。该项目在Codeigniter开发。我看到一些文字以这种格式显示" {title}"

文字显示如下"这是一些文字"。我想从此文本中删除空格。 所以我正在使用PHP函数搜索和替换。但是这个功能不起作用。

此功能无法取代"空间"到" - " 。它让我看起来像那样#34;这是一些文字"

     {latest_videos}
           // in {title} = "This is some text"
        <?php   echo $tit = str_replace(' ','_','{title}'); ?>

            // I want $tit = "This-is-some-text"
            // But the str_replace give me "This is some text"

          <a href="{base_url}watch/<?php echo $tit ;?>/{id}">

        {/latest_videos}

1 个答案:

答案 0 :(得分:0)

你可以这样做:

https://www.codeigniter.com/user_guide/helpers/url_helper.html

^^这包含一个将为你处理str_replace的函数

在控制器/模型中添加一个循环,以根据需要构建结构

class controller extends CI_Controller
{
    public function index()
    {
        $this->load->helper('url');
        $videos = ['latest_videos' => [
            'title' => 'Name of a video',
            'id' => 10,
        ]];

        foreach ($videos['latest_videos'] as &$video) {
            $video['url_safe_title'] = url_title($video['title']);
        }

        $this->parser->parse('view_name', $videos);
    }
}

然后在你的视图中你这样做

{latest_videos}
<a href="{base_url}watch/{url_safe_title}/{id}">{title}</a>
{/latest_videos}

这是未经测试的,所以可能需要调整,但它应该给你一个好主意:)