„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie konvertiert man alle Arten von intelligenten Anführungszeichen in PHP?

Wie konvertiert man alle Arten von intelligenten Anführungszeichen in PHP?

Veröffentlicht am 26.12.2024
Durchsuche:513

How to Convert All Types of Smart Quotes in PHP?

Konvertieren Sie alle Arten von intelligenten Anführungszeichen in PHP

Intelligente Anführungszeichen sind typografische Zeichen, die anstelle normaler gerader Anführungszeichen (' und ") verwendet werden. Sie sorgen für ein verfeinertes und... Es kommt jedoch häufig vor, dass Softwareanwendungen Probleme mit der Konvertierung zwischen verschiedenen Arten von Anführungszeichen haben, was zu Inkonsistenzen führt.

Herausforderungen bei Smart Zitatkonvertierung

Die Schwierigkeit bei der Konvertierung intelligenter Anführungszeichen ergibt sich aus der Vielfalt der Kodierungen und Zeichen, die zu ihrer Darstellung verwendet werden. Verschiedene Betriebssysteme und Softwareprogramme verwenden ihre eigenen Standards, was beispielsweise zu einer fragmentierten Landschaft von Anführungszeichen führt. Ein System verwendet möglicherweise Unicode, während ein anderes möglicherweise die Windows-Codepage 1252 verwendet.

Umfassende Konvertierung mit PHP

Um dieser Herausforderung zu begegnen, wurde eine umfassende Funktion zur intelligenten Anführungszeichenkonvertierung bereitgestellt in PHP erfordert ein gründliches Verständnis der verschiedenen Kodierungen und Zeichen. Es sollte in der Lage sein, alle Variationen intelligenter Anführungszeichen zu verarbeiten, einschließlich der in Unicode, Windows-Codepage 1252 und anderen älteren Kodierungen definierten.

Optimierte PHP-Implementierung

Die folgende optimierte PHP-Implementierung wandelt alle Arten von intelligenten Anführungszeichen in reguläre Anführungszeichen um:

function convert_smart_quotes($string)
{
    // Create a map of smart quote characters to their respective Unicode representations
    $smart_quotes = array(
        "\xC2\xAB" => '"', // « (U 00AB)
        "\xC2\xBB" => '"', // » (U 00BB)
        "\xE2\x80\x98" => "'", // ‘ (U 2018)
        "\xE2\x80\x99" => "'", // ’ (U 2019)
        "\xE2\x80\x9A" => "'", // ‚ (U 201A)
        "\xE2\x80\x9B" => "'", // ‛ (U 201B)
        "\xE2\x80\x9C" => '"', // “ (U 201C)
        "\xE2\x80\x9D" => '"', // ” (U 201D)
        "\xE2\x80\x9E" => '"', // „ (U 201E)
        "\xE2\x80\x9F" => '"', // ‟ (U 201F)
        "\xE2\x80\xB9" => "'", // ‹ (U 2039)
        "\xE2\x80\xBA" => "'", // › (U 203A)
    );

    // Strtr function can directly replace the smart quote characters with their Unicode counterparts
    $converted_string = strtr($string, $smart_quotes);

    // Return the converted string
    return $converted_string;
}

Diese Funktion deckt ein breites Spektrum intelligenter Anführungszeichenvariationen ab, einschließlich derjenigen, die in Unicode, der Windows-Codepage 1252 und älteren Kodierungen zu finden sind. Durch die Verwendung von strtr werden alle Instanzen intelligenter Anführungszeichen durch ihre entsprechenden Unicode-Darstellungen ersetzt, was zu einem konsistenten und standardisierten Text führt.

Freigabeerklärung Dieser Artikel wird unter folgender Adresse abgedruckt: 1729550719 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3