Was ist dieses Zeichen ( Â ) und wie Entferne ich es mit PHP?
Es ist ein großes A mit a ^ on top: Â
Es zeigt sich in Fäden gezogen von Webseiten. Es zeigt sich, wo es zuvor einen leeren Raum in der ursprünglichen Zeichenfolge auf der original-Website. Dies ist der eigentliche Charakter, die ist gespeichert in meiner Datenbank. Es ist auch das, was erscheint auf meiner website, wenn ich echo einen string enthält.
Ich weiß, es ist ein character encoding problem, wenn ich ursprünglich Prozesses der Webseite, aber jetzt bin ich stecken mit diesen Zeichen in meiner Datenbank. Ich habe zu konvertieren, das Zeichen, wenn es angezeigt wird, oder irgendwo sonst in der php vor der Ausgabe von html, die es enthält. Ich kann nicht verarbeiten die original-Dokumente.
Ich habe versucht, str_replace() und html_entity_decode() und weder etwas tun.
Was sollte ich sonst noch versuchen?
InformationsquelleAutor T. Brian Jones | 2011-08-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
"Latin-1" ist Ihr problem hier. Es sind ca 65256 UTF-8-Zeichen zur Verfügung, um eine web-Seite, die Sie können nicht speichern Sie in einem Latin-1 Codepage.
Für Ihre unmittelbare problem, das Sie sollten in der Lage sein, um
Allerdings würde ich wechseln Ihre Datenbank auf utf-8 verwenden, so schnell wie möglich, denn das problem wird mit ziemlicher Sicherheit wieder auftreten wird.
Der Unicode-codespace geht bis U+10FFFF, so dass über eine Millionen code-Punkte, geben oder nehmen ein paar illegale.
hier ist eine nützliche Diagramm, Referenz, Zeichen wie diese: ascii-code.com
sehr wahr-war ich beschränke mich auf die UTF-16-Zeichensatz. :- }
UTF-16 hat die gleiche Anzahl von Zeichen. Sie meinte wahrscheinlich UCS-2.
InformationsquelleAutor James Anderson
Es ist nicht wirklich ein Zeichen, und wird wahrscheinlich verursacht durch die Diskrepanz zwischen Inhalt Codierung und browser das encoding. Versuchen Sie die Kodierung Ihrer Seite ausgegeben, was Sie verwenden.
z.B. In dem Abschnitt, Ausgabe:
(Einstellen, UTF-8, was auch immer Sie verwenden)
Dies ist der eigentliche Charakter, die ist gespeichert in meiner Datenbank. Ändert das die situation? Meine Datenbank-Kodierung (Latin-1 Standard). Ich bin nicht sehr vertraut mit der Codierung Fragen.
Oh ja, sorry, habe ich nicht die Frage genau Lesen. In diesem Fall, nachdem Sie ziehen Daten aus einer anderen Website, die Sie brauchen, um zu erkennen, seine Codierung und konvertieren Sie es in Ihrer Datenbank die Codierung vor der Ablage. Es ist in der Regel getan durch analysieren der header wie die, die ich gab, aber abhängig von der Website, die Sie kriechen kann es kompliziert werden.
Das klingt nach der richtigen Lösung für das problem. Ich werde das ändern, wenn ich wieder in diesen Teil des Projektes. Irgendwelche Vorschläge für temporäre Lösungen mit PHP vor der Ausgabe den Charakter, oder ist es unmöglich?
InformationsquelleAutor Sheepy
Diese funktioniert bei mir:
InformationsquelleAutor Grant
Ich mit diesem ein viel
InformationsquelleAutor iautomation
Verwenden Balg codes
InformationsquelleAutor Koushik Samanta
Dieses problem tritt auf, wenn verschiedene charset in Ihrem web.
Um dieses Problem zu lösen (unter Verwendung von utf-8 in den Beispielen):
in der
<HEAD>
Ihrer Seite hinzufügencharset
:In irgendeiner form, die Sie Einreichen, fügen Sie
accept-charset
:Wenn Sie mit php+MySQLi um Ihre form, Sie sollten sicherstellen, dass die Datenbank-Verbindung wird auch die Unterstützung Ihrer charset. Prozeduraler Stil:
- und Objekt-orientierten Stil:
InformationsquelleAutor roetnig