Пожалуйста помогите разобраться с функцией

mikola5858

Новичок
<?php
$a = "?, world?";
$c = array ("Hello", "!!!"');
$b = str_split($a);
$k=0;
While (list($key, $value) = each($b)){
if ($value == "?"){
$value = $c[$k];
$k=$k+1;
}
echo "$value";
}
?>

Нужно описать с помощью функции (замена "?" в любой строке на последовательные значения массива)
 

zerkms

TDD infected
Команда форума
Автору этого кода нужно серьёзно задуматься о своём будущем и пока ещё не поздно выучиться на кого-нибудь другого, но не на программиста.
 

mikola5858

Новичок
Дело в том что программированием занялся как 4 дня назад, чеж вы от меня хотите!))
 

mikola5858

Новичок
Вобщем задание само - написать функцию замена "?" в любой строке на последовательные значения заданого массива. Я написал без функции, нужно описать функию.
 

shelestov

я тут часто
Не проверял. Интерпретатора под рукой нет.
PHP:
function a($a) {
    $c = array('hi', 'hello');
    $a = preg_split($a);
    $i = 0;
    foreach($a as $k => &$v) {
        if($v == '?')
            $v = $c[$i++];
    }
    return implode('', $a);
}

echo a('?, world?');
 
Сверху