andsj0Medlem sedan aug. 200419 inlägg jag har en lista på lite prylar i en mysql databas.
Resultatet från fältet prod kan se ut som följande:
bildel011
bildel026
bildel009
tillbehor129
tillbehor088
tillbehor116
Finns det något smidigt sätt att dela upp detta så jag får siffrorna
i en variabel och produktnamnet i en annan.
Just nu har jag hela namnet i en variabel som heter $produkt.
/andsj0
PeeerMedlem sedan mars 20025 907 inlägg Är det alltid 3 siffror i slutet av strängen? Titta isf på http://se.php.net/substr
andsj0Medlem sedan aug. 200419 inlägg Ok, det ser ut att funka till viss del. Men hur får jag fatt i siffrorna?
Jag behöver även dessa och fattar inte riktigt hur jag får tag på dom.
/andsj0
RocketMedlem sedan feb. 2000372 inlägg Använd substr() för att plocka ut de tre sista tecknen och lägga dem i en ny sträng. Denna strängen innehåller nu bara siffror och du kan få den integer som dessa representerar med hjälp av intval().
$text = "tillbehor129";
$temp = substr($text, strlen($text)-3, strlen($text));
$value = intval($temp);
MatteMedlem sedan aug. 20002 975 inlägg Det borde även gå att göra så här:
preg_match("/(.*?)(\d{3})/", $produkt, $match);
list(, $namn, $nummer) = $match;
Men som Rocket påpekade, $nummer blir här en sträng som kan ha en nolla i början. För att få det till ett tal använd intval().
andsj0Medlem sedan aug. 200419 inlägg Nu ser det ut att fungera som jag tänkt mig.
Tack för hjälpen.
/andsj0