Gå til innhold

nubspørsmål om tekstreplace


Anbefalte innlegg

jeg har en database fylt opp med spill i dette formatet:

 

Assassin's Creed /X360

Assassin's Creed /PS3

osv...

 

jeg vil søke igjennom hele og FLYTTE /X360, /PS3, /PS2 osv til begynnelsen av navnet så det blir:

 

Assassin's Creed /X360 ->> /X360 Assassin's Creed

 

hva er smarteste funksjonen å bruke til sånt?

Lenke til kommentar
Videoannonse
Annonse

Eksempel:

<?php
$title = "Assassin's Creed /PS3";
$explode = explode("/", $title);

echo "/$explode[1] $explode[0]";
?>

 

Trenger bare og sette inn navnene fra databasen inn i $title, så skal det fungere :)

 

EDIT: du kan også ta bort / (slash) streken, hvis den er i veien :)

Endret av Famen
Lenke til kommentar

Bra løsning. Men hvis noen av titlene har slash et sted i tittelen også så feiler den.

<?php
function title_rename($title) {
if ($newtitle = preg_replace('/^(.*?)(\s)?(\/[^\/]*)$/', '\3 \1', $title)) {
	return $newtitle;
} else {
return $title;
}
}
echo $new_title = title_rename('Some / game /PS3');
?>

Lenke til kommentar

Nå er preg veldig «overkill» for dette da.

<?php
function title_rename($title)
{
$pos = strrpos($title, '/');
if ($pos !== false)
	return substr($title, $pos).substr($title, 0, $pos);
else
	return $newtitle;
}
echo $new_title = title_rename('Some / game /PS3');
?>

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...