douli6605 2014-04-17 12:54 采纳率: 100%
浏览 61
已采纳

str_replace在一个数组中

I am building a simple system in CodeIgniter for a client of mine. I want to use str_replace to replace a tag like {company_name} into a value but I seem to cannot get this to work.

My current code is:

<?php

$this->db->where('id', '1');
$data = $this->db->get('pages');

$output = array('row' => $data->row());
$this->template->load('frontend/template', 'frontend/page', $output);

My try was:

<?php

$this->db->where('id', '1');
$data = $this->db->get('pages');

$output = str_replace(
    array("{company_name}"),
    array("Sample company"),
    $data->row()
);

$this->template->load('frontend/template', 'frontend/page', $output);

But I think I am currently on the wrong path as nothing displays anymore and I want some help or explanation on what I am doing wrong here. Thank you.

  • 写回答

2条回答 默认 最新

  • douzhuang6321 2014-04-17 13:02
    关注

    Please take a look at php str_replace function .

    If you want to replace all items in the array, you need to iterate over it :

    foreach($data->row() as $key=>$value){
    $data[$key] = str_replace("{company_name}","Sample company",$value);
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?