ne radi mi php funkcija

1

ne radi mi php funkcija

offline
  • Pridružio: 24 Mar 2004
  • Poruke: 3962
  • Gde živiš: Zemun

imam problem sa strstr funkcijom.
http://www.php.net/manual/en/function.strstr.php
prvi primer
<?php $email  = 'name@example.com'; $domain = strstr($email, '@'); echo $domain; // prints @example.com $user = strstr($email, '@', true); echo $user; // prints name ?>
izaziva gresku
@example.com
Warning: Wrong parameter count for strstr() in ............................

kako ovo da izvedem kad mi ne radi ? dakle nece kada stavim true.

ima li neko neki predlog kako da izcupam deo teksta iz teksta ako znam karakteristicna mesta pocetka i kraja ?
pocetak mogu da dobijem, ali kraj nece da radi jer mi ovo sa true ne radi Sad

tnx



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • PHP developer
  • Pridružio: 22 Mar 2006
  • Poruke: 3760
  • Gde živiš: 127.0.0.1

probaj ovako:

<?php $email = "name@example.com"; $exploded = explode("@",$email); $user = $exploded[0]; $domain = $exploded[1]; ?>

lakse je tako Smile



offline
  • igor86  Male
  • Stručni saradnik
    Web programiranje
  • Pridružio: 24 Maj 2006
  • Poruke: 1633

ili ovako

<?php $email = "name@example.com"; $user = substr($email,0, strpos($email, '@')); ?>

offline
  • Pridružio: 25 Dec 2005
  • Poruke: 65
  • Gde živiš: Beograd

Sto se tice strstr, cini mi se da mora da ima tri parametra iako treci ima default vrednost. S tim, kôd bi izgledao ovako

<?php $email  = 'name@example.com'; $domain = strstr($email, '@', false); echo $domain; // prints @example.com $user = strstr($email, '@', true); echo $user; // prints name ?>

Doduse, opcija sa explode je elegantinija Very Happy

offline
  • Pridružio: 24 Mar 2004
  • Poruke: 3962
  • Gde živiš: Zemun

@pyost
ovo tvoje mi javlja gresku jer ima 3 parametra. dakle ja sam pitao zasto mi javlja taj problem... na php.net vidim da je to ok, a meni javlja gresku. ovo ne radi.

@igor86, Rastafarii
bah, meni treba da se izcupa @ Smile
dakle znam karakteristican pocetak, i znam karakteristican kraj a treba mi sredina

sa ovim sam misliom
$test = strstr($text, 'nesto karakteristicno na pocetku ali mi taj deo ne treba');
da odstranim pocetak teksta koji mi ne treba
a sa ovim sam mislion
$test = strstr($text, 'nesto karakteristicno na kraju ali mi ne treba', true);
da odstranim kraj teksta koji mi je visak.
ali ovo zadnje nece da radi... mogu da izvucem pocetak i ide do kraja.

nego mene i dalje buni sto mi ne radi onaj primer sa php.net....
jel to do mene, ili taj primer ne radi ni vama ??

offline
  • Pridružio: 11 Maj 2005
  • Poruke: 871
  • Gde živiš: Aleksinac - Niš

Citat:6.0.0 Added the before_needle parameter

Ovo sa 3 ce tek moci da radi od verzije 6.0.0 Very Happy

A za ovo tvoje probaj ovo sto igor86 preporucuje:
$pozicija=strpos($text,"nesto karakteristicno na kraju sto ti ne treba"); $test=substr($text,0,$pozicija);

offline
  • PHP developer
  • Pridružio: 22 Mar 2006
  • Poruke: 3760
  • Gde živiš: 127.0.0.1

@stankovic: to ce da mu vrati $text od samog pocetka, a ne od karakteristicnog pocetka...

@Svemirko:
<?php $start = strpos($text, "nesto karakteristicno na pocetku"); $end = strpos($text,"nesto karakteristicno na kraju"); $resenje = substr($text,$start,$end-$start); ?>

offline
  • Pridružio: 24 Mar 2004
  • Poruke: 3962
  • Gde živiš: Zemun

hvala momci... uspeo sam i sam sa kombinacijom
strstr, strpos i substr
Rastafarii
da vidim sad i ovo tvoje resenje koje je mozda jos elegantnije Smile

imam sada nove muke Smile
evo ukratko da kazem o cemu se radi.
skidam delove sa nekog sajta
e sada sajt je radjen u cirilici a html je normalno u latinici Smile
hteo bih sve da bacim u lat ako je moguce i upravo sada resavam problem linkova.
posto su tamo linkova a href='?bla=1" recimo trebalo bi sada to da prevedem u a href='site.com?bla=1" i da dodam target="_blank" ako me razumete.

zanimljiva mi je ova funkcija
ereg_replace
ali bi mi trebao neki dzoker ako ima posto se tamo ID menja.

ili da uzmem da pisem sam neku funkciju koja ce prvi izvuci id pa posle napisati sve u fullu

tnx

offline
  • PHP developer
  • Pridružio: 22 Mar 2006
  • Poruke: 3760
  • Gde živiš: 127.0.0.1

<?php $link = "<a href='?bla=1'>"; $newlink = str_replace("href='","target='_blank' href='site.com/",$link); ?>

offline
  • Pridružio: 24 Mar 2004
  • Poruke: 3962
  • Gde živiš: Zemun

ali ovo bla=1 se menja... dakle nije to fiksno Smile
trebalo bi mi nesto ovako...
$contents = ereg_replace('<a href="?bla=****', '<a href="site.com?bla=**** target="_blank" ', $contents);

Dopuna: 18 Okt 2007 2:00

evo moze ovako
   $text = "blabla=11";    $text = str_replace('blabla=', 'site://blabla=', $text);    echo $text;

hehe verovatno moze i elegantnije Smile

Ko je trenutno na forumu
 

Ukupno su 896 korisnika na forumu :: 6 registrovanih, 0 sakrivenih i 890 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 357magnum, Darkoniii_94, esx66, FileFinder, loon123, mnn2