2014-04-17 4 views
0

나는 내 고객을 위해 CodeIgniter에서 간단한 시스템을 구축 중이다. 나는 str_replace을 사용하여 {company_name}과 같은 태그를 값으로 바꾸고 싶지만이 태그를 작동시키지 못하는 것 같습니다.str_replace in array

<?php 

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

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

내 시도했다 :

나의 현재 코드는

<?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); 

하지만 난 더 이상 아무것도 디스플레이와 같은 잘못된 경로에 현재라고 생각하고 나는 약간의 도움이나 설명을 원하는 나는 여기서 잘못하고있다. 고맙습니다.

+2

사용에 대한 당신은 배열을 사용하지 돈 AFAIK 어떤 하나의 값을 다른 값으로 대체하려는 경우에만'str_replace'를 사용하십시오. 또한'data-> row()'가 정확한 문자열''{company_name "}'을 포함하고 있는지 확인할 수 있습니까? – Bowdzone

+0

$ data-> row()에는 무엇이 들어 있습니까? 문자열이나 배열입니까? –

+0

배열입니다. 여기에는 데이터베이스의 모든 필드가 들어 있습니다. 예를 들어, ID : 제목, 내용, 작성 데이터, 편집 날짜. 그러나 나는 내 관점에서 제목과 내용만을 사용한다. –

답변

0

PHP str_replace 기능을 살펴보십시오. 당신이 배열의 모든 항목을 바꾸려면

, 당신은 그것을 반복해야합니다

foreach($data->row() as $key=>$value){ 
$data[$key] = str_replace("{company_name}","Sample company",$value); 
} 
1

MySQL의 기능 REPLACE

$this->db->select("SELECT REPLACE(field, '{company_name}', 'Sample company') FROM pages ");