Слова на урду в PHP не ожидаются
Не печатать ожидаемый результат;
<?php
mb_internal_encoding( 'UTF-8');
$term="لاہوری";
$sel="لا";
$sterm=mb_strrichr($term, $sel, true, 'utf-8');
$prefix=mb_strrichr($term, $sel, false, 'utf-8');
echo $sterm;
echo "<br>";
echo $prefix;
?>
Фактический результат: لاہوری,
Ожидаемый результат: ہوری
Ожидаемый результат1: لا
2 ответа
Здесь вы назначили "لاہوری" в $term
и "لا" в $sel
, Это сохраняется как "ی روہال" (без пробелов) и "ال". Так вот echo $sterm;
дает null
так как нет символов от начала до первого вхождения "ال" и echo $prefix;
дает вывод символов от первого вхождения "ال" до конца, то есть "ی روہال"
(لاہوری)
mb_internal_encoding( 'UTF-8');
$term="لاہوری";
$sel="لا";
$prefix=str_replace('لا','',$term);
echo "Actual:".$term;
echo "<br>";
echo "Expected:".$prefix;