Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

Aradığım kelime nereden başlıyor?

Konu, 'PHP' kısmında Scorpion tarafından paylaşıldı.

  1. Scorpion

    Scorpion Daimi Üye

    Kayıt:
    17 Ekim 2002
    Mesajlar:
    962
    Beğenilen Mesajlar:
    0
    selam arkadaşlar asp bilenler bilirler instr ile aradığımız kelimenin kelimenin kaçıncı karakrterinde olduğunu bulabiliriz
    peki bunun php deki karşılığı nedir.Baya bir bakundım ama bulamadım.sadece var mı yokmu ona bakabiliyoruz.
    benim yapmak istediğim aslında şöle bişeyy


    ozel bir karakteri string içinde aratım karakterden sonrasını kesip atacağım
    tam olarak

    "www.ceviz.net/deneme.php?soru=cevap"

    olan stringi

    www.ceviz.net/deneme.php

    haline getirmek istiyorum

    yada

    www.ceviz.net/

    şekline ilk şekil icin "?" işaretini aratıp sonrasını kesip atmak
    ikincisinde ise en sondaki "/" işaretini bulup sonrasını kesmek :)


    bir kaç gün önce ezboo ile ilgili bir konu yazmıştım.sonra vaz geçip ben yazayım hem php den de birşeyler kaparıs dedim..

    gene diğer bir soru ise http_user_agent ile aldığım bilgiler çok farklılık gösteriyor işletim sistemi ve borser a göre ben bunun içinde işletim sistemi ve browserı nasıl çekicem.ilk bakışta split le ";" ayırmak geliyor ama kacıncısı işletim sistemi hangisi browser ?bunu nasıl bilicem...




    Windows me deki "http_user_agent" : Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Win 9x 4.90)

    Windows 98 deki "http_user_agent" : Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt; YComp 5.0.2.6)

    arkadaşlar buradan bunun ME mi yoksa 98 mi olduğunu ayırt edemedim bu arada nasıl ayırt edeceğiz?
     
    Son düzenleme yönetici tarafından yapıldı: 8 Kasım 2002
  2. mkarabulut

    mkarabulut Misafir

    ASP deki InStr() fonksiyonunun PHPdeki karşılığı strpos() fonksiyonudur.

    String işlemlerine gelince ...
    Eğer yapmak istediğin işlem URL leri parçalamak ise zaten bunun için hazır bir fonksiyon var parse_url(), bu fonksiyon parametre olarak url yi alır ve domain adı,path,protocol gibi bilgileri içeren bi dizi dönderir....

    Eğer string içinde bilmediğin pozisyonlarda bi şeyler arıyorsan eregi() gibi düzenli ifade fonksiyonlarını kullanmanı tavsiye ederim...
    mesela
    Kod:
    if (eregi ("MSIE ([0-9.]+)",getenv("http_user_agent"),$regs)){
         $browser = "IE ".$regs[1];
    } elseif (eregi("Netscape",getenv("http_user_agent"))){
        $browser  = "Netscape";
    }
    

    Böyle daha güzelini yapabilirsin (Yukarıdaki yanlış olabilir,mantık olması açısından yazdım...)

    Yek yapman gereken tarayıcıları teker teker alıp, denemek sonrada onlara uygun düzenli ifadeleri yazmak...

    kolay gelsin