"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment convertir tous les types de citations intelligentes en PHP ?

Comment convertir tous les types de citations intelligentes en PHP ?

Publié le 2024-12-26
Parcourir:968

How to Convert All Types of Smart Quotes in PHP?

Convertir tous les types de guillemets intelligents en PHP

Les guillemets intelligents sont des marques typographiques utilisées à la place des guillemets droits réguliers (' et "). Ils donnent un aspect plus raffiné et aspect soigné du texte. Cependant, il est courant que les applications logicielles aient du mal à convertir entre différents types de guillemets intelligents, ce qui entraîne des incohérences.

Défis liés aux devis intelligents. Conversion

La difficulté de convertir les guillemets intelligents provient de la variété des encodages et des caractères utilisés pour les représenter. Différents systèmes d'exploitation et logiciels utilisent leurs propres normes, ce qui entraîne un paysage fragmenté de caractères de guillemets, par exemple. système peut utiliser Unicode, tandis qu'un autre peut utiliser la page de codes Windows 1252.

Conversion complète avec PHP

Pour relever ce défi, une fonction complète de conversion de devis intelligent en PHP nécessite un compréhension approfondie des différents encodages et caractères impliqués. Il devrait être capable de gérer toutes les variantes de guillemets intelligents, y compris ceux définis dans Unicode, la page de codes Windows 1252 et d'autres encodages hérités.

Implémentation PHP optimisée

L'implémentation PHP optimisée suivante convertit tous les types de guillemets intelligents en guillemets réguliers :

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;
}

Cette fonction couvre un large éventail de variantes de guillemets intelligents, y compris celles trouvées dans Unicode, la page de codes Windows 1252 et les encodages hérités. En utilisant strtr, il remplace toutes les instances de guillemets intelligents par leurs représentations Unicode correspondantes, ce qui donne un texte cohérent et standardisé.

Déclaration de sortie Cet article est réimprimé à l'adresse : 1729550719. En cas d'infraction, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3