Arşiv Anasayfa Php ve Asp Dilleri
Sayfalar: 1
Php Stringden Sadece Rakamları Çekme By: [B][R][N] Date: July 22, 2010, 03:09:37 AM
Php 5i denemek için, "xampp for windows" kurmuştum. Fena sayılmamayla beraber, olmasından hoşlanmadığım şeyler de vardı. Malum deprecated mesajları vs. derken ufak bir form işleminde intval fonksiyonunun hatalı değerler dönderdiğini gördüm.


Tabi ilk işim $degisken=(int)$degisken; olarak denemek oldu ama ne yazık ki bi değişiklik olmadı. Ne yapayım ne edeyim derken ufak bi hile geldi aklıma. Değişkenimi sıfırla topladım ve sorun kalmadı. Yani şu şekilde bir fonksiyon, sağlıklı çalışır hale geldi.


   
Oldukça basit bir kod. Muhakkak fonksiyon kullanmaktansa
$_POST['deger']=$_POST['deger']+0;
şeklinde filtreleme yapanlar olmuştur ama benim tecrübelerim arasında olmayan, kolay yöntemlerle zor sorunların altından kalkılabileceğini gösteren bir örnek olduğundan paylaşmak istedim.

Başka bir ufak hile ile, yine bu sorun aşılabilir. Bu hileyi de preg_replace ve eval fonksiyonları ile yapabilriz. Şöyleki; eğer rakam dışındaki tüm karakterleri silersek ve $sayi='56'; yerine $sayi=56; şeklinde bir tanımlama yaparsak, sayi değişkenimiz yine int türde tutulmuş olacaktır.


   
Tabi altta verdiğim örnek intval ile birebir örtüşmez çünkü intval fonksiyonu alfa nümerik bir karakter gördüğü an rakam belirlemeyi keser. Yani "56a98" string değerini intval ile çevirdiğimizde 56 yapar, üstteki fonksiyonda öyle, ancak alttaki fonksiyon 5698 olarak işlemi sonlandıracaktır.
Ynt: Php Stringden Sadece Rakamları Çekme By: melek_03 Date: October 03, 2010, 02:21:09 PM
azcık karışık geldi Şaşkınım. ama deneyince anlaşılır .. güzel anlatım olmuş tşk.ettim

SiteMap - İmode - Wap2