2016-05-02 16 views
0

Ich schreibe ein PHP-Programm, das Benutzereingaben in eine Zeichenfolge konvertiert und zählen die Zeiten, die jedes Zeichen verwendet wird, schließlich für jedes Wort. Kann jemand die Postdaten in eine Zeichenkette umwandeln? Ich sah implode und count_chars, aber implode konvertiert nicht in Zeichenfolge wie erwartet. Ich bin mir nicht sicher, wie ich den aufgetretenen Fehler anzeigen soll, um mehr Informationen zu geben. Ich leite es und schreibe es in phpFiddle. Ich bin mir nicht sicher, wie ich es anderswo laufen lassen soll. Bitte geben Sie an, was implodieren könnte, wie Sie Fehler in phpFiddle anzeigen oder in einem Browser ohne phpFiddle ausführen können.Post-Daten in String konvertieren

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

, warum es nicht funktioniert wie erwartet? Was man bekommt? Was willst du? Fügen Sie bitte ein Beispiel der $ _POST-Struktur und was Sie erwarten. – olibiaz

+2

Wenn Sie die Fehlerprüfung aktiviert haben, können Sie sehen, was der Fehler mit 'implode()' war. Wenn Sie keine Fehler auf dem Bildschirm ausgeben, lassen Sie Ihre Fehlerprotokolle offen, wo Sie sie sehen können. –

+1

Was ist der Fehler? Code scheint gut zu funktionieren, https://eval.in/563889. 'Implode' benötigt keinen' Kleber'. (muss nicht implodieren, wenn nur 1 Index vorhanden ist) – chris85

Antwort

4

Dies könnte das sein, was Sie suchen, .... implode("", $_POST)

5

Imploding PHP Arrays erfordert in der Regel zwei Argumente, Begrenzer und Array.

Um das $ _POST-Array in einen String zu konvertieren, sollten Sie es implodieren können mit;

implode('', $_POST);

+1

Danke für die Antwort! Ich musste eins auswählen und das darüber war das gleiche, und ich las es zuerst, also wählte ich dieses aus. Es funktionierte!!! – Michele

1

Ich hoffe, das ist das, was Sie suchen.

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