<?php
function replaceFromPos($str, $reg, $repl, $pos = 0, $cnt = -1){
}
$text = 'hello world! this world is great. world is big!';
$pattern = '/(world)/i';
$replacement = 'WORLD';
// заменим одно слово, начиная с 10-ой позиции
echo replaceFromPos($text, $pattern, $replacement, 10, 1) , PHP_EOL;
// заменим всё, что после 10-ой позиции
echo replaceFromPos($text, $pattern, $replacement, 10) , PHP_EOL;
// заменим первые два вхождения с нулевой позиции
echo replaceFromPos($text, $pattern, $replacement, 0, 2) , PHP_EOL;
PD9waHAKZnVuY3Rpb24gcmVwbGFjZUZyb21Qb3MoJHN0ciwgJHJlZywgJHJlcGwsICRwb3MgPSAwLCAkY250ID0gLTEpewogICAgcmV0dXJuIHN1YnN0cigkc3RyLCAwLCAkcG9zKS5wcmVnX3JlcGxhY2UoJHJlZywgJHJlcGwsIHN1YnN0cigkc3RyLCAkcG9zLCBzdHJsZW4oJHN0cikpLCAkY250KTsKfQokdGV4dCA9ICdoZWxsbyB3b3JsZCEgdGhpcyB3b3JsZCBpcyBncmVhdC4gd29ybGQgaXMgYmlnISc7CiRwYXR0ZXJuID0gJy8od29ybGQpL2knOwokcmVwbGFjZW1lbnQgPSAnV09STEQnOwovLyDQt9Cw0LzQtdC90LjQvCDQvtC00L3QviDRgdC70L7QstC+LCDQvdCw0YfQuNC90LDRjyDRgSAxMC3QvtC5INC/0L7Qt9C40YbQuNC4CmVjaG8gcmVwbGFjZUZyb21Qb3MoJHRleHQsICRwYXR0ZXJuLCAkcmVwbGFjZW1lbnQsIDEwLCAxKSAsIFBIUF9FT0w7Ci8vINC30LDQvNC10L3QuNC8INCy0YHRkSwg0YfRgtC+INC/0L7RgdC70LUgMTAt0L7QuSDQv9C+0LfQuNGG0LjQuAplY2hvIHJlcGxhY2VGcm9tUG9zKCR0ZXh0LCAkcGF0dGVybiwgJHJlcGxhY2VtZW50LCAxMCkgLCBQSFBfRU9MOwovLyDQt9Cw0LzQtdC90LjQvCDQv9C10YDQstGL0LUg0LTQstCwINCy0YXQvtC20LTQtdC90LjRjyDRgSDQvdGD0LvQtdCy0L7QuSDQv9C+0LfQuNGG0LjQuAplY2hvIHJlcGxhY2VGcm9tUG9zKCR0ZXh0LCAkcGF0dGVybiwgJHJlcGxhY2VtZW50LCAwLCAyKSAsIFBIUF9FT0w7