То, что предлагает Эверт, мне тоже кажется логичным!Если вы настаиваете, это способ сделать это, если вас беспокоит только две буквы.Для большего количества букв скрит не будет столь эффективным и должен быть изменен.
<?PHP
function myConvert($str)
{
$chars['ā']='ā';
$chars['ī']='ī';
foreach ($chars as $key => $value)
$output = str_replace($key, $value, $str);
echo $str;
}
myConvert("māja un man tā patīk");
?>
================== отредактировано ==============
Для многих символов этот может быть полезен:
<?PHP
function myConvert($str)
{
$final=null;
$parts = preg_split("/&#[0-9]*;/i", $str);//get all text parts
preg_match_all("/&#[0-9]*;/i", $str, $delimiters );//get delimiters;
$delimiters[0][]='';//make arrays equal size
foreach($parts as $key => $value)
$final.=$value.mb_convert_encoding
($delimiters[0][$key], "UTF-8", "HTML-ENTITIES");
return $final;
}
$fh = fopen("testFile.txt", 'w') ;
fwrite($fh, myConvert("māja un man tā patīkī"));
fclose($fh);
?>
Требуемый вывод записывается в текстовом файле.Этот код, точно такой, каким он не объединен в каком-либо проекте, делает то, что, как он утверждает, делает.Преобразует коды типа ā
в аналогичные символы, которые они представляют.