Skip to content

Instantly share code, notes, and snippets.

@karakhanyans
Created February 6, 2019 12:14
Show Gist options
  • Save karakhanyans/6be1a7f4feef3a4bb7f8d15e8c23dc4b to your computer and use it in GitHub Desktop.
Save karakhanyans/6be1a7f4feef3a4bb7f8d15e8c23dc4b to your computer and use it in GitHub Desktop.
Modify string with given arguments
function getString()
{
$arg_list = func_get_args();
$arguments_number = func_num_args();
if ($arguments_number >= 2) {
$string = $arg_list[0];
preg_match_all('/{(.*?)}/', $string, $output_array);
$params = $output_array[1];
array_shift($arg_list);
foreach ($params as $param) {
$replace = $arg_list[$param] ?? '';
$string = str_replace('{' . $param . '}', $replace, $string);
}
return $string;
}
return 'Not Enough Arguments';
}
echo getString('Hello {1} {0} {2}', 'Mr.', 'X');
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment