比三重嵌套开关更好的想法?

时间:2014-03-27 20:48:31

标签: php forms nested switch-statement

您好我有一些表格可以通过php脚本上传文件,用户选择一个类别,而不是第二个子类别,然后选择文件类型。

我必须将它上传到服务器上正确的目录和路径将看起来像.... / category / sub-category / type / file.xxx ---然后我把整个绝对路径放到我的数据库

到目前为止,我已经有了三重嵌套开关,有没有其他方法可以更好地完成它?

非常感谢!

有一段HTML代码和PHP - > http://oi59.tinypic.com/352qclx.jpg

2 个答案:

答案 0 :(得分:0)

不知道交换机在什么时候进来。但是,你不能只在一个声明中做一些像下面这样的事情吗?

$complete_filepath = "..../$category/$sub_category/$type/$filename";

答案 1 :(得分:0)

可能是一个多维数组将帮助您解决它。像这样:

$arr_dir_conf = array("dir_conf" =>
    array("category1" => 
        array("sub_category1" =>
            array("type1" => "directory/category1/sub_category1/type1"),
            ...
            array("typen" => "directory/category1/sub_category1/typen")

        ), 
        ...
        array("sub_categoryn" =>
        ...
        ),
    ),
    ...
);

然后你就像这样使用数组:

move_uploaded_files($_FILES['file']['tmp_name'], 
    $arr_dir_conf[$category][$subcategory][$type]);