hEiti Posted June 14, 2011 Report Share Posted June 14, 2011 1. variants: http://www.mana adrese.lv/pagarinajums/13574/turpinajums 2. variants: http://www.mana adrese.lv/pagarinajums/1384/turpinajums Ka jus redzat urls itka ir praktiski lidzigs, bet atskiras tikai skaitli beigu dalaja, mans jautajums vai ar substr vai kadu ldzigu funkciju ir iespejams no shiem abiem stringiem iegut tikai to ciparu dalju lai cik gara vinja butu? .. Mans domu gajiens bija substr kas mekle no ceturta slesha lidz piektajam, bet nezinu vai maz tas ir iespeejams :)... Dodiet padomu ludzu :) Quote Link to comment Share on other sites More sharing options...
Kemito Posted June 14, 2011 Report Share Posted June 14, 2011 (edited) Mož provē šādi: $explode = explode('/', $_REQUEST['URI']); foreach($explode as $get_item){ echo $get_item; } Šādi paskaties kura masīva vērtība ir tieši šis cipars un tad ar indeksu ņēm ārā. echo $explode[index]; Nu nezinu var nav ieļauta drukas kļūda bet šāda tā doma. Gan jau ir kāds labāks risinājums. Edited June 14, 2011 by Kemito Quote Link to comment Share on other sites More sharing options...
hEiti Posted June 14, 2011 Author Report Share Posted June 14, 2011 Mož provē šādi: $explode = explode('/', $_REQUEST['URI']); foreach($explode as $get_item){ echo $get_item; } Šādi paskaties kura masīva vērtība ir tieši šis cipars un tad ar indeksu ņēm ārā. echo $explode[index]; Nu nezinu var nav ieļauta drukas kļūda bet šāda tā doma. Gan jau ir kāds labāks risinājums. Hmm skan labi, iedzershu kafiju un paproveshu.. Paldies par ideju! :) Quote Link to comment Share on other sites More sharing options...
Lauris Posted June 14, 2011 Report Share Posted June 14, 2011 $url = "http://www.manaadrese.lv/pagarinajums/1384/turpinajums"; if(preg_match("/\/(\d+)\//", $url, $matches)) { print_r($matches); } Teorētiski pareizāks risinājums. Quote Link to comment Share on other sites More sharing options...
rpr Posted June 14, 2011 Report Share Posted June 14, 2011 nezinu vai šajā gadījumā ir objektīvi tekti pareizākais risinājums. pareizāk būs, tas kas vieglāk uztverams, bet ar explode būs vieglāk uztvert: $explode = explode('/', $_REQUEST['URI']); echo $explode[4]; Quote Link to comment Share on other sites More sharing options...
briedis Posted June 14, 2011 Report Share Posted June 14, 2011 $url = "http://www.manaadrese.lv/pagarinajums/1384/turpinajums"; if(preg_match("/\/(\d+)\//", $url, $matches)) { print_r($matches); } Teorētiski pareizāks risinājums. Noteikti nav pareizākais risinājums, ja tiek lietotas regulārās izteiksmes, kur var mierīgi iztikt bez tām :) Quote Link to comment Share on other sites More sharing options...
mounkuls Posted June 14, 2011 Report Share Posted June 14, 2011 (edited) explode jau kā reiz ir ok, delimiters ir "/" un ja nav jātaisa kas universāls ar figviņzin bezmaz citu domēnu un protokolu, ir pat ļoti OK. Edited June 14, 2011 by mounkuls Quote Link to comment Share on other sites More sharing options...
Kemito Posted June 14, 2011 Report Share Posted June 14, 2011 @Lauris - Katru reizi rakstīsi adresi iekš mainīgā, ja nu viņas ir pāri 10? tad 10 reizes mest mainīgajā adresi, kaut kā labi neskan. Paņem uzspridini un gatavs :D Quote Link to comment Share on other sites More sharing options...
Lauris Posted June 14, 2011 Report Share Posted June 14, 2011 Facepalm. Quote Link to comment Share on other sites More sharing options...
daGrevis Posted June 14, 2011 Report Share Posted June 14, 2011 Ja izmanto kādu gatavu "freimwork'u", tad (piemērā CodeIgniter)... $this->uri->segment( 2 ); P.S. Jo nav jau jāizdomā ritenis no jauna, ja tas jau ir iebūvēts pašā "framework'ā". Quote Link to comment Share on other sites More sharing options...
marcis Posted June 15, 2011 Report Share Posted June 15, 2011 $url = 'http://www.mana adrese.lv/pagarinajums/1384/turpinajums'; $path = parse_url($url, PHP_URL_PATH); $segments = explode('/', substr($path, 1)); print_r($segments); Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.