Konvertieren verschiedener intelligenter Anführungszeichen in PHP
Intelligente Anführungszeichen sind gängige Varianten von Standard-Anführungszeichen, die in der Typografie verwendet werden, um die Lesbarkeit und Ästhetik zu verbessern Reiz des Textes. Um die korrekte Umwandlung dieser intelligenten Anführungszeichen in normale Anführungszeichen bei der Arbeit mit Text sicherzustellen, ist es wichtig, die Vielfalt der in verschiedenen Kontexten verwendeten intelligenten Anführungszeichen zu berücksichtigen.
Verbesserte Funktion für die Umwandlung intelligenter Anführungszeichen:
Die folgende erweiterte Funktion behebt die Mängel der ursprünglichen Funktion, die Sie bereitgestellt haben, indem sie eine umfassende Zuordnung für verschiedene Anführungszeichen enthält. Es nutzt sowohl eine Zeichentabelle ($chr_map) als auch vorberechnete Arrays ($chr und $rpl) für optimale Effizienz:
<code class="php">$chr_map = array( "\xC2\x82" => "'", // U+0082⇒U+201A single low-9 quotation mark "\xC2\x84" => '"', // U+0084⇒U+201E double low-9 quotation mark "\xC2\x8B" => "'", // U+008B⇒U+2039 single left-pointing angle quotation mark "\xC2\x91" => "'", // U+0091⇒U+2018 left single quotation mark "\xC2\x92" => "'", // U+0092⇒U+2019 right single quotation mark "\xC2\x93" => '"', // U+0093⇒U+201C left double quotation mark "\xC2\x94" => '"', // U+0094⇒U+201D right double quotation mark "\xC2\x9B" => "'", // U+009B⇒U+203A single right-pointing angle quotation mark "\xC2\xAB" => '"', // U+00AB left-pointing double angle quotation mark "\xC2\xBB" => '"', // U+00BB right-pointing double angle quotation mark "\xE2\x80\x98" => "'", // U+2018 left single quotation mark "\xE2\x80\x99" => "'", // U+2019 right single quotation mark "\xE2\x80\x9A" => "'", // U+201A single low-9 quotation mark "\xE2\x80\x9B" => "'", // U+201B single high-reversed-9 quotation mark "\xE2\x80\x9C" => '"', // U+201C left double quotation mark "\xE2\x80\x9D" => '"', // U+201D right double quotation mark "\xE2\x80\x9E" => '"', // U+201E double low-9 quotation mark "\xE2\x80\x9F" => '"', // U+201F double high-reversed-9 quotation mark "\xE2\x80\xB9" => "'", // U+2039 single left-pointing angle quotation mark "\xE2\x80\xBA" => "'", // U+203A single right-pointing angle quotation mark ); $chr = array_keys($chr_map); // but: for efficiency you should $rpl = array_values($chr_map); // pre-calculate these two arrays $str = str_replace($chr, $rpl, html_entity_decode($str, ENT_QUOTES, "UTF-8"));</code>
Diese verbesserte Funktion nutzt einen Unicode-kompatiblen Ansatz und deckt einen umfassenden Bereich ab Intelligente Anführungszeichen. Durch die Nutzung vorberechneter Arrays wird ein hohes Maß an Effizienz aufrechterhalten und gleichzeitig eine genaue Konvertierung intelligenter Anführungszeichen in Standardanführungszeichen gewährleistet.
Zusätzliche Überlegungen:
Das obige ist der detaillierte Inhalt vonWie kann ich verschiedene intelligente Anführungszeichen in PHP konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!