SORU
15 HAZİRAN 2009, PAZARTESİ


vs rawurlencode urlencode?

Eğer bir URL bir değişkeni kullanarak oluşturmak istiyorum eğer dize kodlamak için iki seçenek var. urlencode() rawurlencode().

Ne tercih edilir tam olarak hangi farklar vardır?

CEVAP
15 HAZİRAN 2009, PAZARTESİ


Amacınıza bağlıdır. Diğer sistemlerle birlikte çalışabilirlik önemli ise rawurlencode gitmek için yol gibi görünüyor. Bir istisna sorgu dizesi form-kodlama yerine boşluk olarak kodlanmış durumda urlencode gerekir () tarzı takip etmeye bekliyoruz eski sistemler.

rawurlencodedaha sonra RFC 1738 PHP 5.3.0 ve RFC 3986 önce (http://us2.php.net/manual/en/function.rawurlencode.php) izler

Bir dize tüm alfasayısal olmayan -_.~ dışında karakter döndürür (%) yüzde işareti iki onaltılık basamak tarafından izlenen almıştır. Bu kodlama açıklanan » RFC 3986 korumak için değişmez karakter olmaya yorumlanır özel URL sınırlayıcı ve koruma lerini olmak karıştırılmış tarafından iletim medya ile karakter dönüşümleri (gibi bazı e-posta sistemleri).

Not RFC 3986 vs 1738. php 5.3 önce rawurlencode tilde karakteri (~) 1738 RFC göre kodlanmış. PHP 5.3 olarak, ancak, rawurlencode kodlama tilde karakteri gerektirmeyen RFC 3986 izler.

urlencodekodlar artı işaretleri (rawurlencode yapılan ) (http://us2.php.net/manual/en/function.urlencode.php) boşluk

Bir dize tüm alfasayısal olmayan -_. hariç karakterleri döndürür (%) yüzde işareti iki onaltılık basamak tarafından takip ve boşluk artı olarak kodlanmış almıştır ( ) işaretleri. WWW formdan gönderilen verileri kodlanmış, x-www-form-urlencoded uygulama/medya türü olarak aynı şekilde aynı şekilde kodlanır. Bu farklıdır » 3986 kodlama (bkz: () rawurlencode) RFC tarihsel nedenlerden dolayı, boşluk artı olarak kodlanır ( ) işaretleri.

Bu uygulama/x-www-form-urlencoded RFC 1866 tanımını karşılık gelir.

Ek Okuma:

Ayrıca http://bytes.com/groups/php/5624-urlencode-vs-rawurlencode tartışma görmek isteyebilirsiniz.

Ayrıca, RFC 2396 bakmaya değer. RFC 2396 geçerli URI sözdizimi tanımlar. İlgilendiğimiz ana bölüm 3.4 Sorgu Bileşeni:

Sorgu bir bileşen içinde, karakterler ";", "/", "?", ":", "@",
"&", "=", " ", ",", and "$"
saklıdır.

Gördüğünüz gibi, sorgu dizesi ayrılmış bir karakterdir ve böylece RFC 3986 (rawurlencode) başı olarak kodlanmış olması gerekir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Amir Parmar

    Amir Parmar

    25 Kasım 2010
  • bunliu

    bunliu

    2 Mayıs 2007
  • Caroline Martin

    Caroline Mar

    19 EYLÜL 2008