PHP - htmlspecialchars'ın ve UTF-8

1 Cevap php

Ben sadece htmlspecialchars ile bir şeyler onaylamak için çalışıyorum. Ben sadece UTF-8 içine benim veritabanı çevirdim ve ben sonunda bunu tüm çalışma olduğunu düşünüyorum, ama benim kod boyunca ben PHP htmlspecialchars fonksiyonunu kullanmış:

htmlspecialchars($val, ENT_QUOTES,'ISO-8859-1',false);

Ben tüm girişleri değiştirme hakkında endişelenmenize gerek var mı:

htmlspecialchars($val, ENT_QUOTES,'UTF-8',false);

PHP documention ben gerek yok, ama bu doğru olduğunu göstermektedir?

For the purposes of this function, the charsets ISO-8859-1, ISO-8859-15, UTF-8, cp866, cp1251, cp1252, and KOI8-R are effectively equivalent, as the characters affected by htmlspecialchars() occupy the same positions in all of these charsets.

1 Cevap

(Htmlspecialchars'dan tarafından "ele" tüm karakterler) 7-bit/US ASCII aralığında bulunmaktadır. Ve bu söz kodlamasında özdeş (ve açık) vardır. Eğer kodlama parametresini değiştirmek değilse Yani evet, hiçbir zarar vermez. Ama ben yine de bunu yapmak için teşvik ediyorum.