Avatar billede dennism Nybegynder
19. januar 2006 - 14:27 Der er 4 kommentarer og
1 løsning

PHP: substr

Jeg har en variabel:
$row[title] = "Shetlænder hoppe";

Som jeg kører følgende funktion på:
function maxlenght(&$var, $maxlenght=16) {
    if (strlen($var) > $maxlenght) {
        $var = substr($var, 0, $maxlenght)."...";
    }
}


maxlenght($row[title]);

Når jeg herefter printer $row[title] får jeg:
Shetlænder...

Nogen der kan give mig en forklaring på det? Det er jo ik lige frem med 16 karakterer :)
Avatar billede olebole Juniormester
19. januar 2006 - 14:45 #1
<ole>

$row["title"] = "Shetlænder hoppe";

function maxlenght($var, $maxlenght=16) {
    if (strlen($var) > $maxlenght) {
        $var = substr($var, 0, $maxlenght)."...";
    }
    return $var;
}


print maxlenght($row["title"]);

- funker fint  :)

/mvh
</bole>
Avatar billede dennism Nybegynder
19. januar 2006 - 14:47 #2
Ja, havde jeg også bemærket. Lidt underligt hvad der er galt med mit.
Avatar billede olebole Juniormester
19. januar 2006 - 21:33 #3
Primært returnerer din funktion ikke noget - og '&$var' hjælper ikke noget, da du jo ikke definerer '$var' udenfor funktionen.

Desuden er PHP på visse områder et ret sloppy sprog, så man kan undlade at skrive gåseøjne i et array-kald ... men resultatet kan være overraskende og kan være en potentiel sikkerhedsrisiko. Det er ikke noget, der giver fejl i dit eksempel - men du bør alligevel rette din kodestil på dette område  ;o)
Avatar billede dennism Nybegynder
20. januar 2006 - 15:20 #4
Tak skal du have. Fandt problemet i min kode - havde ikke noget med dette at gøre.

Smider ud lige et svar?
Avatar billede olebole Juniormester
20. januar 2006 - 15:55 #5
Jamen, det gør jeg da .... *griiiiiiiib*  ;o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester