PHPの電話番号から形成できる可能な単語を印刷しようとしています。私の一般的な戦略は、各数字を可能な文字の配列にマップすることです。次に、各数値を反復処理し、関数を再帰的に呼び出して、可能な各文字を反復処理します。
これまでのコードは次のようになっていますが、まだうまくいきません。機能させるために構文を修正できますか?
$pad = array(
array('0'), array('1'), array('abc'), array('def'), array('ghi'),
array('jkl'), array('mno'), array('pqr'), array('stuv'), array('wxyz')
);
function convertNumberToAlpha($number, $next, $alpha){
global $pad;
for($i =0; $i<count($pad[$number[$next]][0]); $i++){
$alpha[$next] = $pad[$next][0][$i];
if($i<strlen($number) -1){
convertNumberToAlpha($number, $next++, $alpha);
}else{
print_r($alpha);
}
}
}
$alpha = array();
convertNumberToAlpha('22', 0, $alpha);