在前端,我提供用户重命名他的任何图像。这是通过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
答案 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;