Gå til innhold

Hvordan hente ut fire siste bokstaver i en string?


Anbefalte innlegg

<html>
   <title>
   </title>
   
   <body>
       <pre>
           <?php
               $dir = "./prove";
               $dh = opendir($dir);
               while (false !== ($filename = readdir($dh))) {
                   $files[] = $filename;
               }
               
               sort($files);

               print_r($files);
           ?>
       </pre>
       
       <?php
           $antall = count($files);
           echo "<p>Antall elementer: " . $antall . "</p>\n";
           
           echo "<ul>\n";            
           while ($i < $antall) {
               //her vil jeg lage til noe for å kun printe de filene som ender på .php
               echo '<li>' . $files[$i] . "</li>\n";
               $i++;
           }
           echo "</ul>\n";
       ?>
   </body>
</html>

 

Jeg vil altså hente ut de fire siste bokstavene fra filnavnstringen og sammenlikne dem med ".php". Satser på at det blir en noe som: if ([4 siste bokstaver] == ".php") { echo bla bla }, men vet ikke hvordan jeg skal få det til (hvilken funksjon jeg må bruke).

Jeg har søkt masse på php.net, men jeg har ikke peiling på hva jeg skal se etter.

Endret av endrebjorsvik
Lenke til kommentar
Videoannonse
Annonse

fines mange muligheter..

 

substr( $filnavn, -4);

 

er vel den ekleste.

 

EDIT: du kan også bruke:

 

$filnavn ="/home/noe/noe/noe/index.php";

 

$fil_info = pathinfo( $fil_navn);

 

print $fil_info['extension'];

 

// skriver ut "php"

 

print $fil_info['basename'];

 

// skriver ut "index.php"

 

print $fil_info['dirname'];

 

// skriver ut "/home/noe/noe/noe"

 

 

Kanskje en litt overkill her :) men greit å kunne

Endret av trondes
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...