在特定于名称的目录中上传图像,例如 /i/m/image.jpg
Upload images in directory specific to name like /i/m/image.jpg
我希望在我的服务器上的目录 /media/catalog/product
中上传图片
然后它将获取图像的第一个字符并将其放在与该字符匹配的目录中(如果不存在,也需要创建目录),然后对第二个字符执行相同的操作。
例如
如果我上传一张名为 product.jpg
的图片,它将最终出现在目录 /media/catalog/product/p/r/
中
test.jpg
-> /media/catalog/product/t/e/
图片都在我电脑的一个文件夹里,或者我可以把它们全部上传到一个目录。
我正在尝试使用 Magento 版本 1.9 执行此操作
<?PHP
/* TRANSFORM FILES ARRAY */
function diverse_array($vector) {
$result = array();
foreach($vector as $key1 => $value1)
foreach($value1 as $key2 => $value2)
$result[$key2][$key1] = $value2;
return $result;
}
/* DO THE TRANSFORMATION, warning key for the superglobal $_FILES may be "picture" */
$upload = diverse_array($_FILES["upload"]);
/* create folder if not exists and then move file to the right folder */
foreach($upload as $current)
{
mkdir("/media/catalog/product/" . $current["name"][0]);
mkdir("/media/catalog/product/" . $current["name"][0] . "/" . $current["name"][1]);
move_uploaded_file($current["tmp_name"],
"media/catalog/product/" . $current["name"][0] . "/" . $current["name"][1] . "/" . $current["name"]);
}
请注意,您可能想要更改目录的权限,请参阅 mkdir manual,并检查输入文件的名称。
我希望在我的服务器上的目录 /media/catalog/product
中上传图片
然后它将获取图像的第一个字符并将其放在与该字符匹配的目录中(如果不存在,也需要创建目录),然后对第二个字符执行相同的操作。
例如
如果我上传一张名为 product.jpg
的图片,它将最终出现在目录 /media/catalog/product/p/r/
test.jpg
-> /media/catalog/product/t/e/
图片都在我电脑的一个文件夹里,或者我可以把它们全部上传到一个目录。
我正在尝试使用 Magento 版本 1.9 执行此操作
<?PHP
/* TRANSFORM FILES ARRAY */
function diverse_array($vector) {
$result = array();
foreach($vector as $key1 => $value1)
foreach($value1 as $key2 => $value2)
$result[$key2][$key1] = $value2;
return $result;
}
/* DO THE TRANSFORMATION, warning key for the superglobal $_FILES may be "picture" */
$upload = diverse_array($_FILES["upload"]);
/* create folder if not exists and then move file to the right folder */
foreach($upload as $current)
{
mkdir("/media/catalog/product/" . $current["name"][0]);
mkdir("/media/catalog/product/" . $current["name"][0] . "/" . $current["name"][1]);
move_uploaded_file($current["tmp_name"],
"media/catalog/product/" . $current["name"][0] . "/" . $current["name"][1] . "/" . $current["name"]);
}
请注意,您可能想要更改目录的权限,请参阅 mkdir manual,并检查输入文件的名称。