首頁 > 後端開發 > PHP問題 > PHP中如何取得不含後綴名的文件

PHP中如何取得不含後綴名的文件

PHPz
發布: 2023-04-24 11:42:50
原創
1414 人瀏覽過

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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板