-1

基本的に私がやろうとしているのは、配列の各要素の前 (および後) にテキストを追加することです。これは例です:

<?php 
    $word="code";
    $chars=preg_split('//', $word, -1, PREG_SPLIT_NO_EMPTY);
    print"<pre>";
    print_r($chars);
    print"</pre>";
?>

(はい、正規表現が必要なので、使用することはできませんstr_split()

出力:

Array
(
    [0] => c
    [1] => o
    [2] => d
    [3] => e
)

私の最終的な目標は、最終的な文字列を次のようにすることです。 "shift+c","shift+o","shift+d","shift+e"

"shift+各要素の前に を追加するだけで助けが得られる場合implode()は、残りを使用できます。

4

2 に答える 2

1

chars 配列をループして、目的の文字列を連結できます。

<?php 
    $word="code";
    $chars=preg_split('//', $word, -1, PREG_SPLIT_NO_EMPTY);
    foreach($chars as $c){
        echo "shift+" . $c . " ";
    }
?>

出力:

shift+c shift+o shift+d shift+e
于 2013-08-18T00:11:57.950 に答える
1

私のコメントに基づく解決策は次のとおりです。

$word = 'code';
$result = array_map(function($c){ return "shift+$c"; }, str_split($word));

そして、ここに出力がありますvar_dump($result)

array(4) { 
  [0]=> string(7) "shift+c" 
  [1]=> string(7) "shift+o" 
  [2]=> string(7) "shift+d" 
  [3]=> string(7) "shift+e"
}

編集:本当に必要な場合は、 の結果preg_splitを の配列として使用できますarray_map

于 2013-08-18T00:15:55.857 に答える