У меня есть числовая строка в персидских числах, например, < /p>
۱۱۲۵۱۲۰۱۲۴ < /p>
< /blockquote>
, который 1125120124 < /strong> в английском численности. Я хочу преобразовать эту строку в формат номеров, разделенный запятыми после каждой тысячи, например, < /p>
۱,,۱۲۰,۱۲۴ < /p>
< /blockquote>
Как < /p>
number_format(1125120124); // it returns as 1,125,120,124
< /code>
и < /p>
number_format(112512012); // it returns as 112,512,012
< /code>
Так реально мне нужны аналогичные результаты как метод number_format. Я только начал регулярные выражения. Попробовал с очень простыми узорами, но все еще не рядом. Пробовал preg_split, чтобы разделить строку и снова объединить ее с запятыми, но, похоже, не подходит. У меня есть функция, в которой я передаю число, которое возвращает мне этот номер персидскими символами. Обмен этим тоже < /p>
function trans($num)
{
$persian_num_array = [
'0'=>'۰',
'1'=>'۱',
'2'=>'۲',
'3'=>'۳',
'4'=>'۴',
'5'=>'۵',
'6'=>'۶',
'7'=>'۷',
'8'=>'۸',
'9'=>'۹',
];
$translated_num = '';
$temp_array=[];
while ($num > 0) {
array_push($temp_array,$num % 10);
$num = intval($num / 10);
}
foreach($temp_array as $val){
$translated_num.= $persian_num_array[array_pop($temp_array)];
}
echo $translated_num;
}
Подробнее здесь: https://stackoverflow.com/questions/397 ... ber-format