PHP Garip karakter önce £ işareti?

2 Cevap php

Benim formda bir metin alanına bir TL yazarken nedense i  76.756.687 £ tuhaf karakter olsun?

2 Cevap

Eğer şüpheli gibi, bir karakter kodlama sorunu var - sayfa UTF-8 bir charset kullanmak için ayarlanır? (Gerçekten bu kodlama ile yanlış gidemez.) Ayrıca, muhtemelen varlık kodlamak için dışarı yolda kiloluk sembolü isteyeceksiniz (£)

Bir örnek karakter kümesi olarak (form sayfası ve HTML e-posta hem de için) kullanabilirsiniz:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

O dedi, para birimi sembolünü girmek zorunda kullanıcı için iyi bir neden var mı? Bu statik bir metin öğesi veya metin alanının solunda aşağı bir damla ya olarak sahip olmak iyi bir fikir olurdu? (Ben eşek konuşuyorum ve bir serbest formlu textarea veya bir sey kullanıyorsanız eğer görmezden çekinmeyin.)

Muhtemelen karakter kodlaması olarak UTF-8 kullanıyorsanız ancak doğru çıktı beyan yoktur. £ karakter (U +00 A3) 0xC2A3 ile UTF-8 olarak kodlanmış olduğundan. Ve bu byte dizisi  iki karakteri temsil eder ve £ ISO 8859-1 ile yorumlandığı zaman.

Yani sadece doğru karakter kodlamasını belirtmeniz gerekir. : PHP Eğer header fonksiyonunu to set the proper value for Content-Type başlık alanı gibi kullanabilirsiniz

header('Content-Type: text/html;charset=utf-8');

Ama herhangi bir çıktı önce bu fonksiyonu çağırmak emin olun. Aksi HTTP başlık zaten gönderilir ve bunu değiştiremezsiniz.