Kom ihåg mig?
Home Menu

Menu


Kapa sträng i PHP

Ämnesverktyg Visningsalternativ
Oläst 2006-06-08, 19:03 #1
princips avatar
princip princip är inte uppkopplad
Medlem
 
Reg.datum: Jun 2005
Inlägg: 178
princip princip är inte uppkopplad
Medlem
princips avatar
 
Reg.datum: Jun 2005
Inlägg: 178
Är man van att bara arbeta med ASP känns PHP väldigt jobbigt.. :blink:

Har en sträng liknande "id=15&prm=" där jag behöver få ut siffrorna med PHP, men eftersom det är ett id kan det vara både en, två, tre och fyra siffror långt.

Med substr kan jag få ut "15&prm=" men hur kapar jag de fem sista tecknen i strängen?

Tacksam för hjälp...
princip är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-08, 19:18 #2
b_anderssons avatar
b_andersson b_andersson är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Apr 2004
Inlägg: 1 067
b_andersson b_andersson är inte uppkopplad
Har WN som tidsfördriv
b_anderssons avatar
 
Reg.datum: Apr 2004
Inlägg: 1 067
Använd regex, enkelt förklarat något i stil med:

Kod:
$pattern = '/id=(.+?)&prm=/';
$text = 'id=15&prm=';
preg_match( $pattern, $text, $matches );
$id = $matches[1];
Säg till om jag ska förenkla det mer.

/edit: läs mer om preg_match hos php.net

//Björn
b_andersson är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-08, 19:22 #3
Jonas Jonas är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Feb 2004
Inlägg: 3 364
Jonas Jonas är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Feb 2004
Inlägg: 3 364
Citat:
Originally posted by princip@Jun 8 2006, 19:03
Är man van att bara arbeta med ASP känns PHP väldigt jobbigt.. :blink:

Har en sträng liknande "id=15&prm=" där jag behöver få ut siffrorna med PHP, men eftersom det är ett id kan det vara både en, två, tre och fyra siffror långt.

Med substr kan jag få ut "15&prm=" men hur kapar jag de fem sista tecknen i strängen?

Tacksam för hjälp...
Kod:
function handleStr($str)
{
$temp = explode('&',$str);
$arr = array();
foreach($temp as $a)
{
list($var, $val) = explode('=', $a);
$arr[$var] = $val;
}
return $arr;
}
$arr = handleStr('id=15&prm=testar&mcd=max');
print_r($arr);
Dock något otestad kod.
Men den borde ge typ:
Kod:
Array
(
'arr' => 15,
'prm' => 'testar',
'mcd' => 'max'
)
För att få ut värdet så är det bara att hantera: $arr['id']
Jonas är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-08, 20:20 #4
princips avatar
princip princip är inte uppkopplad
Medlem
 
Reg.datum: Jun 2005
Inlägg: 178
princip princip är inte uppkopplad
Medlem
princips avatar
 
Reg.datum: Jun 2005
Inlägg: 178
Tackar för snabba svar. Två lösningar på 20 minuter...

Fungerar klockrent, och jag har lärt mig något nytt...

Tack!
princip är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 19:25.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017