jQuery ajax php重命名文件名的一部分

时间:2011-10-05 18:35:42

标签: php javascript jquery ajax rename

在前端,我提供用户重命名他的任何图像。这是通过javascript提示来获取新名称,jQuery ajax和php。重命名文件时,它必须对2个文件生效,如下面的链接所示。网址中的1是动态的。这是用户ID。问题是我只想替换文件名中的product而不是后面的_1317804260。在第二个链接中,我们在文件名前面有thumb_。所以我们再次只想用新的重命名替换product。在这方面工作,似乎我需要多次使用explode()才能完成工作。有没有更简单的方法来做到这一点。

http://domain.com/userfiles/1/images/product_1317804260.gif
http://domain.com/userfiles/1/images/thumbnails/thumb_product_1317804260.gif

所以基本上如果新名称是newname,文件的最终输出应该是

newname_1317804260.gif
thumb_newname_1317804260.gif

2 个答案:

答案 0 :(得分:1)

JS:

var tmpName = "product_1317804260.gif".split("_")
var newName = "newname" + "_" + tmpName[1]

PHP:

$tmpName = explode("_", "product_1317804260.gif");
$newName = "newname" . "_" . $tmpName[1];

答案 1 :(得分:1)

$oldName = "http://domain...product_userid.gif";

$newName = "what the user entered";

$parts = explode('/', $oldName);
$user_path = $parts[3] . '/' . $parts[4]; // it will contain userfiles/1

$parts = explode("_", $oldName);

$product_name = $new_name . "_" . end($parts);
$thumb_name   = "thumb_" . $product_name;