在 dirname 后添加一个字符串,并使用 preg_replace 斜杠


Add a string after dirname and slash using preg_replace

如果我有以下PATH作为string

dirname/user folder/sample_file.png

我将如何在 PATH 中的 dirname/user 文件夹之后添加字符串_trash,因此其结果为:

dirname/user folder_trash/sample_file.png

这应该适合您:

<?php
    $path = "dirname/user folder/sample_file.png";
    echo $path = dirname($path) . "_trash/" . basename($path);
?>

输出:

dirname/user folder_trash/sample_file.png

编辑:

您可以搜索该文件夹,然后将其替换为新文件夹:

<?php
    $path = "dirname/user folder/another folder/sample_file.png";  
    $searchFolder = "/user folder/";
    $replaceFolder = "user folder_trash";
    echo $path = preg_replace($searchFolder, $replaceFolder, $path, 1); 
?>

输出:

dirname/user folder_trash/another folder/sample_file.png

编辑2:

如果每次刺痛都遵循相同的模式,这应该可以更改第二个文件夹:

<?php
    $path = "dirname/user folder/another folder/another folder/sample_file.png";  
    $parts = explode("/", $path);
    $parts[1] = $parts[1] . "_trash";
    echo $path = implode("/", $parts);
?>

输出:

dirname/user folder_trash/another folder/another folder/sample_file.png

另一种方式:

  1. 您还可以使用explode函数将字符串拆分为项目(使用 count获取项目数的函数)。

  2. 然后修改每个项目。这取决于你。

  3. 最后,按string concatenation将项目合并为字符串