ホームページ  >  記事  >  バックエンド開発  >  PHPで接尾辞のないファイルを取得する方法

PHPで接尾辞のないファイルを取得する方法

PHPz
PHPzオリジナル
2023-04-24 10:52:381397ブラウズ

PHP是一种流行的服务器端编程语言,用于创建动态的网站和Web应用程序。在开发过程中,经常需要获取文件名并去除后缀名以进行处理。本文将介绍在PHP中如何获取不带后缀名的文件。

一、使用basename()函数
PHP提供了一个内置函数basename(),它可以获取文件名并删除扩展名。该函数需要传入两个参数:第一个参数是包含文件路径的字符串,第二个参数是要删除的文件扩展名。

例如,假设我们有一个文件路径为“/var/www/html/test.php”的文件,我们想要获取不带扩展名的文件名“test”,可以使用如下代码:

$filename = basename("/var/www/html/test.php", ".php");
echo $filename; // 输出: test

在这个例子中,“/var/www/html/test.php”是要获取的文件路径,“.php”是要删除的文件扩展名。输出结果将是文件名“test”。

二、使用pathinfo()函数
PHP还提供了另一个内置函数pathinfo(),可以用于获取文件路径的各个部分,包括文件名和扩展名。pathinfo()函数接受一个文件路径字符串作为输入,并返回一个关联数组,其中包含文件名、扩展名和其他数据。

例如,以下代码演示了如何使用pathinfo()函数获取文件名和扩展名:

$path = "/var/www/html/test.php";
$fileinfo = pathinfo($path);
$filename = $fileinfo['filename'];
$extension = $fileinfo['extension'];
echo $filename; // 输出:test
echo $extension; // 输出:php

通过将$path传递给pathinfo()函数,我们可以将文件的各个部分存储在$fileinfo数组中。然后,我们可以使用$fileinfo数组中的“filename”和“extension”键获取文件名和扩展名之后,再删除扩展名。

三、使用preg_replace()函数
我们还可以使用preg_replace()函数替换文件名中的扩展名。preg_replace()函数用于在字符串中查找和替换文本,接受三个参数:搜索字符串的正则表达式、要替换的字符串以及搜索的目标字符串。

假设我们有一个文件名“test.php”,我们可以使用preg_replace()函数删除扩展名,如下所示:

$filename = "test.php";
$new_filename = preg_replace('/\\.[^.\\s]{3,4}$/', '', $filename);
echo $new_filename; // 输出:test

在这个例子中,我们使用了一个正则表达式来匹配扩展名部分,然后使用空字符串替换它们。正则表达式的含义是匹配一个点后面跟3到4个任意字符的字符串,第一个反斜杠用于转义点,第二个反斜杠用于在字符串中转义反斜杠。

总之,在PHP开发中,获取文件名并删除扩展名是常见的编程任务。我们可以使用基本的内置函数,如basename()和pathinfo()函数,或者使用正则表达式和preg_replace()函数。无论哪种方法,我们都可以轻松地获取不带扩展名的文件名。

以上がPHPで接尾辞のないファイルを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。