Php 批量重命名名称中包含某些文本的文件

Php 批量重命名名称中包含某些文本的文件,php,Php,我在实时服务器上批量重命名一个文件夹中的文件时出错。基本上,我丢失了大量.jpeg文件的扩展名。现在它们看起来像file1jpeg、file2jpeg等 如何扫描整个文件夹并将以jpeg结尾的文件名替换为.jpeg,如file1.jpeg 乐。有些文件可能已经有点了。以我的名义 非常感谢 以下是您可以开始的方式: <?php $string = "filejpeg"; $pos = strpos($string, 'jpeg'); $newstring = subst

我在实时服务器上批量重命名一个文件夹中的文件时出错。基本上,我丢失了大量.jpeg文件的扩展名。现在它们看起来像file1jpeg、file2jpeg等

如何扫描整个文件夹并将以jpeg结尾的文件名替换为.jpeg,如file1.jpeg

乐。有些文件可能已经有点了。以我的名义


非常感谢

以下是您可以开始的方式:

<?php

   $string = "filejpeg";
   $pos = strpos($string, 'jpeg');

   $newstring = substr_replace($string, '.', $pos, 0);

    var_dump($newstring);
?>

以下是您可以开始的方式:

<?php

   $string = "filejpeg";
   $pos = strpos($string, 'jpeg');

   $newstring = substr_replace($string, '.', $pos, 0);

    var_dump($newstring);
?>

这应该行得通。对我来说很好

<?php
    $allFiles = scandir('../php/'); // REPLACE WITH YOUR DIRECTORY


    foreach($allFiles as $file) {
        $pos = strpos($file, 'php'); // REPLACE PHP WITH YOUR EXTENSION
        $newstring = substr_replace($file, '.', $pos, 0);


        rename("../php/$file", "../php/".$newstring);
    }
?>

这应该行得通。对我来说很好

<?php
    $allFiles = scandir('../php/'); // REPLACE WITH YOUR DIRECTORY


    foreach($allFiles as $file) {
        $pos = strpos($file, 'php'); // REPLACE PHP WITH YOUR EXTENSION
        $newstring = substr_replace($file, '.', $pos, 0);


        rename("../php/$file", "../php/".$newstring);
    }
?>

好的,您可以创建一个脚本来读取目录列表,并决定是否重命名每个文件。这是什么问题?问题是现在jpeg文件没有扩展名,它们缺少点。jpeg。我需要一个建议来添加一个点。在jpeg结束前的文件名中。当然,这是您在问题中明确说明的。我给出了答案来回答如何做到这一点。到目前为止,你应该表现出一些努力…不要期望有人会为你写整个剧本;这就是它的工作原理。我在这里很挣扎,我几乎没有使用regex的经验,这将是最好的解决方案。好的,您创建一个脚本,读取目录列表,并决定每个文件是否重命名。这是什么问题?问题是现在jpeg文件没有扩展名,它们缺少点。jpeg。我需要一个建议来添加一个点。在jpeg结束前的文件名中。当然,这是您在问题中明确说明的。我给出了答案来回答如何做到这一点。到目前为止,你应该表现出一些努力…不要期望有人会为你写整个剧本;这就是它的工作原理。我在这里挣扎,我几乎没有使用regex的经验,这将是最好的解决方案。上帝保佑你。。。我搞砸了:上帝保佑你。。。我把事情搞砸了: