2012-10-11 5 views
1
$this->Settings = array("host" => $host , "user" => $user , "pass" => $pass); 
    $this->db = $db; 
    $this->Settings["name"] = ereg_replace ("_", "", $this->db); 
    $this->init(); 

php 5.2에서 php 5.3으로 마이그레이션 한 후 작동하지 않는 응용 프로그램이 있습니다. 나는 그것이 여전히 DB의 설정을하지 않는 php 5.3 ereg_replace to preg_replace

$this->aSettings["name"] = preg_replace("/_/", "", $this->db);

에 위의 ereg_replace 라인을 변경 후에도

.

+0

문제는 값이 데이터베이스에서 검색되지 않는다는 것이다. 문제는 '$ db' 변수에있다. 값을 검사 해보십시오 :'var_dump ($ db)' – pankar

답변

3

preg_replace()이 작동하지 않는 특별한 이유는 없지만 대신 str_replace()을 사용할 수 있습니다.

$this->Settings['Name'] = str_replace('_', '', $this->db); 

이 문장은 비록 관심 날 :

$this->db = $db; 

경우 $db 세트는? 실제 문제가 어디에 위치하는지 알 수있을 때까지 그 흔적을 따라 가라.

+0

감사합니다. 그래 .. 그게 문제가 아니야. 오류보고가 모두로 설정된 경우에도 오류가 없으므로 추적하기가 어렵습니다. –

+0

@PotentialCoder 그러면 코드를 더 많이 공유해야합니다. 그렇지 않으면 도움을 줄 수 없습니다. –