• 24-09-2018, 19:40:30
    #1
    Bir script yapıyorum ve bir kısmında TC kimlik no ve Cihazlarının Seri'no sunu alıyorum (Değişken hane de) alıyorum kişilerden işlem süresi bitene kadar.
    Bu işlem süresi bitince TC kimlik no ve Cihaz Seri'no sunun son 5 hanesini alıp veri tabanına yazdırıyorum fakat. Geri kalan kısmı da yıldızla (*) doldurmak istiyorum örnek vermek gerekirse.

    TC No: 65987415678
    İşlem bittikten sonra: 15678
    Benim istediğim: ******15678

    ilk başta TC no da 6 tane yıldız olacağından bir if le hallettim fakat seri no değişken hane de kimi 10 kimi 20 haneli kimisi de daha fazla ya da az orada takıldım.
  • 24-09-2018, 19:46:57
    #2
    Merhabalar,

    Gelen seri numarasının strlen ile karakter sayısını aldıktan sonra yapabilirsiniz.
  • 24-09-2018, 19:47:22
    #3
    strlen ile kaç rakamlı olduğuna bakabilir strtr ile bölebilir for ile döndürebilirsin



    yapamazsanız tw atın özelden bakalım
  • 24-09-2018, 20:10:34
    #4
    truser adlı üyeden alıntı: mesajı görüntüle
    Merhabalar,
    Gelen seri numarasının strlen ile karakter sayısını aldıktan sonra yapabilirsiniz.
    Sinemium adlı üyeden alıntı: mesajı görüntüle
    strlen ile kaç rakamlı olduğuna bakabilir strtr ile bölebilir for ile döndürebilirsin
    yapamazsanız tw atın özelden bakalım
    Tamam sayıyı buldum ama o kadar yıldızı nasıl koyduracağım for döngüsü ile koydursam. O yıldızları for döngüsünden dışarı alıp nasıl veritabanın yazdıracğaım tekrar.
    Verileri veritabanında da tutmuyorum çünkü. Sadece işlem sonu her yerde son 5 hane kalıyor.
  • 24-09-2018, 20:39:49
    #5
    PhYtOnX adlı üyeden alıntı: mesajı görüntüle
    Tamam sayıyı buldum ama o kadar yıldızı nasıl koyduracağım for döngüsü ile koydursam. O yıldızları for döngüsünden dışarı alıp nasıl veritabanın yazdıracğaım tekrar.
    Verileri veritabanında da tutmuyorum çünkü. Sadece işlem sonu her yerde son 5 hane kalıyor.
    For öncesinde $stars = [] ; şeklinde array oluşturup for içinde arrayin içine yıldız atarsınız, for bittikten sonrada implode ile birleştirirsiniz.
  • 24-09-2018, 20:48:38
    #6
    truser adlı üyeden alıntı: mesajı görüntüle
    For öncesinde $stars = [] ; şeklinde array oluşturup for içinde arrayin içine yıldız atarsınız, for bittikten sonrada implode ile birleştirirsiniz.
    implode diye bir fonksiyon olduğunu bilmiyordum hocam yeni öğrendim teşekkürler
    İşimi gördü bu benim
  • 24-09-2018, 20:49:53
    #7
    PhYtOnX adlı üyeden alıntı: mesajı görüntüle
    implode diye bir fonksiyon olduğunu bilmiyordum hocam yeni öğrendim teşekkürler
    İşimi gördü bu benim
    Rica ederim : ), iyi çalışmalar.
  • 24-09-2018, 22:41:44
    #8
    Döngü olsam bu iş için dönmeye üşenirim
    $tcson5 = "12345";
    $dolgu = array_fill(5, (11-5), "*");
    echo  implode("", $dolgu).$tcson5;
    Bide bu var tabi
    $tcson5 = "12345";
    $dolgu = str_repeat("*", (11-5));
    echo  $dolgu.$tcson5;