PHP'nin XML eklentisi karakter kodlamaları arasında dönüşüm için » Evrenkod karakterlerini kullanır. İki tür karakter kodlaması vardır: kaynak kodlaması ve hedef kodlaması. PHP'nin dahili belge gösterimi daima UTF-8 ile kodlanır.
Kaynak kodlaması XML belge çözümlenirken yapılır. Kaynak kodlaması XML çözümleyici oluşturulurken belirtilebilir (bu kodlama XML çözümleyici işleme başladıktan sonra bir daha değiştirilemez). Desteklenen kaynak kodlamaları ISO-8859-1, US-ASCII ve UTF-8'dir. İlk ikisinde karakterler tek baytlıktır. UTF-8 karakterleri bir bayttan dört bayta kadar farklı sayıda bayttan oluşabilir. PHP'de kullanılan öntanımlı kaynak karakter kodlaması ISO-8859-1'dir.
Kaynak kodlaması, PHP veriyi XML eylemci işlevlerine aktarırken kullanılır. Bir XML çözümleyici oluşturulduğunda hedef kodlaması kaynak kodlaması ile aynı yapılır, fakat istenirse her an değiştirilebilir. Hedef kodlaması karakter verisinin yanında etiket isimleri ile işlem komutlarının hedeflerini de etkiler.
Eğer XML çözümleyici, kaynak karakter kodlamasında gösterimi mümkün olmayan karakterlere rastlarsa hata verir.
Eğer PHP, çözümlenen XML belgede seçilen hedef kodlamasıyla gösterilemeyen karakterler bulunduğunu saptarsa sorunlu karakterler "indirgenir". Şimdilik bunu gerçeklemek için bu karaterlerin yerine soru imleri konmaktadır.