2016-05-02 57 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'不需要'膠水'。 (如果只有一個索引,不需要內爆) – chris85

回答

4

這可能是你在找什麼.... implode("", $_POST)

5

爆PHP陣列通常需要兩個參數,分隔符,以及陣列。

到$ _POST數組轉換成一個字符串,你應該能夠使用內爆它;

implode('', $_POST);

+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>