2016-05-02 7 views
0

私は、ユーザー入力を文字列に変換し、最終的に各単語が使用された回数をカウントするPHPプログラムを作成しています。投稿者のデータを文字列に変換する方法を知っていますか?私はimplodecount_charsを見ていましたが、implodeは予想通りの文字列に変換されていません。私は、より多くの情報を提供するために遭遇しているというエラーをどのように表示するのか分かりません。私はそれを実行し、phpFiddleでそれを書いています。私は他の場所でそれをどのように動かすかわからない。 implodeに間違っている可能性のある情報、phpFiddleでエラーを表示する方法、またはphpFiddleなしでブラウザでこれを実行する方法についての情報を与えてください。投稿データを文字列に変換する

<?php 
    echo $_POST['value']; 
    $post_string = implode($_POST); 
    foreach (count_chars($post_string, 1) as $i => $val) { 
     echo "there were $val instances of \"", chr($i) , "\" in the string. \n"; 
    } 
?> 
<form method="post" action=""> 
<input type="text" name="value"> 
<input type="submit"> 
</form> 
+4

予想通り、なぜそれが機能していませんか?何を得る?あなたが欲しいもの? $ _POST構造体の例と期待するものを追加してください。 – olibiaz

+2

エラーチェックが有効になっていると、 'implode()'でエラーが何であったかを知ることができます。画面にエラーを出力しない場合は、エラーログを開いたままにしておいてください。 –

+1

エラーは何ですか?コードは正常に動作しているようです(https://eval.in/563889)。 Implodeは 'glue'を必要としません。 (インデックスが1つしかない場合は、暗黙にする必要はありません) – chris85

答えて

4

これは、あなたが探しているものかもしれません.... implode("", $_POST)

5

破PHP配列は、通常2つの引数、区切り文字、および配列が必要です。

$ _POST配列を文字列に変換するには、を使用して文字列を変換できます。

implode('', $_POST);

+1

答えをありがとう!私は1つを選択しなければならなかった、そしてそれの上にあるものは同じで、最初にそれを読んだので、私はそれを選んだ。出来た!!! – Michele

1

私は、これはあなたが探しているものであると思います。

<?php 
 
if (isset ($_POST['value'])) { 
 
    echo $_POST['value'] . "<br>"; 
 
} 
 
$post_string = implode("", $_POST); 
 
foreach (count_chars($post_string, 1) as $i => $val) { 
 
    echo "There were $val instances of \"", chr($i) , "\" in the string. <br>"; 
 
} 
 
?> 
 
<form method="post" action=""> 
 
    <input type="text" name="value"> 
 
    <input type="submit"> 
 
</form>

関連する問題