<?php

function maskOnayla($text)
{
    // Eğer {onayla} hiç yoksa → dokunmadan geri döndür
    if (strpos($text, '{onayla}') === false) {
        return $text;
    }

    // {onayla} varsa başa taşı
    $text = '{onayla} ' . trim(str_replace('{onayla}', '', $text));

    // 0 + 10 rakam (toplam 11 haneli numara)
    $pattern = '/0(?:\s*\d){10}/';

    return preg_replace_callback($pattern, function ($m) {

        $num = $m[0];
        $masked = '';
        $firstZero = false;

        for ($i = 0; $i < strlen($num); $i++) {
            $c = $num[$i];

            if ($c === '0' && !$firstZero) {
                $masked .= '0';
                $firstZero = true;
            } elseif (ctype_digit($c)) {
                $masked .= '*';
            } else {
                $masked .= $c;
            }
        }

        return $masked;

    }, $text);
}



$text = "selam mustafa bu benim no canım {onayla} 05555100525 olan numara doğru mu?";

echo maskOnayla($text);

?>