Gebruik van basename() in PHP

Use Basename Php



De basename() functie is een ingebouwde functie van PHP die de bestandsnaam van een bepaald pad ophaalt. Het kan worden gebruikt om alleen de naam van het bestand uit een bestandsnaam of bestandspad af te drukken. Deze functie kan ook worden gebruikt om de bestaande scriptnaam af te drukken. Het belangrijkste doel van deze functie is om de bestandsnaam of de huidige scriptnaam te achterhalen voor programmeerdoeleinden. Hoe de functie basename() in PHP kan worden gebruikt, wordt in deze tutorial getoond.

Syntaxis:
string basisnaam (string $path [, string $achtervoegsel])







Deze functie kan twee argumenten aannemen. Het eerste argument is verplicht en krijgt bestandsnaam of bestandsnaam met het pad als tekenreekswaarde. Het tweede argument is optioneel en wordt gebruikt om alleen de bestandsnaam zonder extensie te krijgen.



Voorbeeld1: Lees bestandsnaam van de bestaande en niet-bestaande bestandsnaam

Het volgende voorbeeld toont het gebruik van de functie basename() zonder het optionele argument.



Maak een PHP-bestand met het volgende script. Hier wordt de functie basename() gebruikt voor de bestaande en niet-bestaande bestanden. Rekening() functie is gedefinieerd om te controleren of het specifieke bestand bestaat of niet. Beide hallo.txt en wereld.txt bestanden worden gebruikt in de functie basename() om de bestandsnaam met de extensie te achterhalen.







functieRekening($bestand)
{
indien( Bestand bestaat ($bestand))
gooide uit '$bestandbestaat.
'
;
anders
gooide uit '$bestandbestaat niet.
'
;
}

//Stel de bestandsnaam in die bestaat
$basepath1 = 'hallo.txt';

rekening($basepath1);

//Gebruik van de functie basename() zonder optionele parameter
gooide uit '

De bestandsnaam met extensie is '. basisnaam ($basepath1) .'

'
;

//Stel de bestandsnaam in die niet bestaat
$basepath2 = 'wereld.txt';

rekening($basepath2);

//Gebruik van de functie basename() zonder optionele parameter
gooide uit '

De bestandsnaam met extensie is '. basisnaam ($basepath2) .'



'
;

//Gebruik van de functie basename() met optionele parameter
gooide uit '

De bestandsnaam zonder extensie is '. basisnaam ($basepath1,'.tekst') .'

'
;

?>

Uitgang:
De volgende uitvoer zal verschijnen na het uitvoeren van het bovenstaande script vanaf de server. De uitvoer laat zien dat de hallo.txt bestand bestaat op de huidige locatie en de functie basename() retourneert de bestandsnaam. De wereld.txt bestand bestaat niet op de huidige locatie, maar de functie basename() retourneert nog steeds de bestandsnaam voor dit bestand. De functie basename() retourneert dus de bestandsnaam van een bestandspad, ongeacht of het bestand bestaat of niet.

Voorbeeld 2: Lees bestandsnaam van het bestandspad

In het vorige voorbeeld wordt alleen de bestandsnaam doorgegeven in het eerste argument van de functie basename(). Dit voorbeeld toont het gebruik van de functie basename() om de bestandsnaam met een extensie en zonder extensie uit het bestandspad te achterhalen. .php wordt gebruikt als de optionele argumentwaarde van de functie basename(). Als het PHP-bestand in het bestandspad bestaat, retourneert de functie basename() de bestandsnaam zonder een extensie van het pad.



//Stel het bestandspad in
$bestandspad = 'var / www / html / php / boek.php';

//Haal de bestandsnaam op met extensie
gooide uit 'De naam van het bestand met extensie is ';
gooide uit basisnaam ($bestandspad).'
'
;

//Haal de bestandsnaam op zonder extensie
gooide uit 'De naam van het bestand zonder extensie is ';
gooide uit basisnaam ($bestandspad,'.php').'
'
;

?>

Uitgang:
De volgende uitvoer zal verschijnen na het uitvoeren van het bovenstaande script vanaf de server. Het pad dat in het script wordt gebruikt, ' /var/www/html/php/book.php ', bevat een PHP-bestand en de functie basename() retourneert boek.php indien gebruikt zonder een optioneel argument en retourneert boek wanneer het wordt gebruikt met een optioneel argument.

Voorbeeld 3: Lees bestandsnaam van URL-adres met query

Het volgende voorbeeld laat zien hoe de functie basename() kan worden gebruikt om de bestandsnaam op te halen van een URL-adres dat queryvariabelen bevat.

Maak een PHP-bestand met het volgende script. De ontploffen() functie wordt hier gebruikt om de URL en de queryreeks te scheiden. Deze functie retourneert een array. Het eerste element van de array bevat de URL en het tweede element van de array bevat de waarde van de queryreeks. De functie basename() wordt gebruikt om de bestandsnaam van het eerste element van de array te achterhalen.



//Stel het URL-adres in met de queryparameter
$url = 'http://localhost/php/customer.php?id=108967';

//Haal het bestandspad op uit de URL
$bestandspad= ontploffen ('?',$url);

//Haal de bestandsnaam op met extensie
gooide uit 'De naam van het bestand met extensie is ';
gooide uit basisnaam ($bestandspad[0]).'
'
;

?>

Uitgang:
De volgende uitvoer zal verschijnen na het uitvoeren van het bovenstaande script vanaf de server. Hier is de bestandsnaam klant.php .

Voorbeeld 4: Lees de map en de map na het weglaten van de laatste map uit het pad

De functie basename() kan ook worden gebruikt om de mapnaam van een pad te achterhalen. Het wordt in het volgende voorbeeld gebruikt om de huidige mapnaam en de mapnaam vóór de huidige map uit het pad te achterhalen.

Maak een PHP-bestand met het volgende script. De $_SERVER[‘PHP_SELF’] wordt gebruikt in de functie dirname() om het volledige pad van het huidige script te lezen, en de functie basename() wordt gebruikt om de mapnaam te lezen die dit script bevat. Wanneer een bepaald pad is gedefinieerd in de functie dirname(), en '/' wordt gebruikt in het tweede argument van deze functie, dan zal het pad het mappad lezen door de laatste mapnaam weg te laten. In dit geval retourneert de functie basename() de mapnaam nadat de laatste map uit het pad is weggelaten.



//Lees de huidige map
$ huidige_dir = basisnaam ( dirname ($_SERVER['PHP_SELF']),'/');

// Druk de huidige map af
gooide uit 'De huidige werkdirectory is: '.$ huidige_dir.'
'
;

//Lees de bovenliggende map van het pad
$ jij = basisnaam ( dirname ('/var/www/html/php'),'/');

//Druk de naam van de bovenliggende map van het pad af
gooide uit 'De vorige directory van het opgegeven pad is: '.$ jij.' '
;
?>

Uitgang:
De volgende uitvoer zal verschijnen na het uitvoeren van het bovenstaande script vanaf de server.

Voorbeeld 5: Lees de huidige scriptnaam

De functie basename() kan ook worden gebruikt om de huidige scriptnaam te lezen. Wanneer __HET DOSSIER__ wordt gebruikt in het eerste argument van de functie basename(), wordt de bestandsnaam van het script geretourneerd als uitvoer.



//Lees de huidige scriptnaam
gooide uit 'De naam van het huidige script is: '. basisnaam (__HET DOSSIER__).' '
;

?>

Uitgang:
De volgende uitvoer zal verschijnen na het uitvoeren van het bovenstaande script vanaf de server. De uitvoer toont de naam van het uitvoerende scriptbestand.

Conclusie

De functie basename() is een nuttige functie van PHP wanneer de codeur voor verschillende doeleinden met een bestand of map werkt. Verschillende toepassingen van de functie basename() worden in deze zelfstudie uitgelegd aan de hand van eenvoudige voorbeelden om de lezers te helpen het juiste gebruik ervan te begrijpen en toe te passen in hun PHP-script.