插件窝 干货文章 php用数组替换文件后缀

php用数组替换文件后缀

后缀 文件名 数组 fileName 160    来源:    2025-03-16

在PHP中,你可以使用数组来替换文件的后缀。假设你有一个文件名数组,并且你想要将每个文件名的后缀替换为新的后缀。你可以使用array_map函数结合pathinfostr_replace来实现这一点。

以下是一个示例代码:

<?php
// 原始文件名数组
$fileNames = [
    'example.txt',
    'test.doc',
    'sample.pdf',
    'image.png'
];

// 新的后缀
$newExtension = '.jpg';

// 使用 array_map 替换后缀
$newFileNames = array_map(function($fileName) use ($newExtension) {
    $info = pathinfo($fileName);
    return $info['filename'] . $newExtension;
}, $fileNames);

// 输出结果
print_r($newFileNames);
?>

代码解释:

  1. $fileNames: 这是一个包含原始文件名的数组。
  2. $newExtension: 这是你想要替换的新后缀。
  3. array_map: 这个函数会对数组中的每个元素应用一个回调函数。
  4. pathinfo($fileName): 这个函数会返回一个包含文件路径信息的数组,其中包括filename(不带后缀的文件名)和extension(文件后缀)。
  5. $info['filename'] . $newExtension: 这里我们将文件名(不带后缀)与新的后缀拼接起来,形成新的文件名。

输出结果:

Array
(
    [0] => example.jpg
    [1] => test.jpg
    [2] => sample.jpg
    [3] => image.jpg
)

总结:

通过使用array_mappathinfo,你可以轻松地将数组中的文件名后缀替换为新的后缀。这种方法非常灵活,适用于各种文件名的批量处理。