为什么我的类函数使用str_replace与使用str_replace的内联php代码不一样?

时间:2014-04-09 19:39:24

标签: php encoding utf-8 str-replace

为什么使用str_replace的类函数与使用str_replace的内联php代码的工作方式不同?我认为这与编码有关,但我到处都使用了utf-8,我无法弄清楚这一点。 该函数应该将字符串中的波兰字符更改为%。

我的班级功能:

public function searchTitle($title) {
    $polskie_literki = array("ą","ę","ł","ó","ś","ć","ź","ż","ń","Ą","Ę","Ł","Ó","Ś","Ć","Ź","Ż","Ń");
    $titleReplaced = str_replace($polskie_literki,"%",$title);
    return $titleReplaced ;
}

如果我像这样调用类函数和内联代码:

    $searchText = "człowiek";
    $polskie_literki = array("ą","ę","ł","ó","ś","ć","ź","ż","ń","Ą","Ę","Ł","Ó","Ś","Ć","Ź","Ż","Ń");
    $titleReplaced = str_replace($polskie_literki,"%",$searchText);
    echo "inline result :" . $titleReplaced . "<br>";

    $szukaj = new Search();
    echo "class function result: " . $szukaj->searchTitle($searchText ) . "<br>";

我得到了不同的结果:

inline result: cz%owiek
class function result: człowiek

有什么想法吗?如果我不需要,我不想使用这个内联代码。

0 个答案:

没有答案