这个凌乱爆炸的任何可能的最佳选择?

时间:2012-04-16 13:37:00

标签: php explode

我有一个拇指生成器脚本需要我使用define来指示文件夹的路径...我正在以/ images / galleries / name / imagem.jpg的形式从mySQL fild中选择它/ p>

我认为我这样做的是菜鸟方式......必须有更好的方法来做到这一点!

while($r3 = mysql_fetch_array($e3)){ 
    $path = $r3['pathURLMult'];
    $ped = explode("/", $path);
    $path2 = $ped[0] . "/" . $ped[1] . "/" . $ped[2] . "/";
    define("FOLDER_IMAGES","$path2");
    $imagem = $ped[3];
    echo "<img src=\"getimage.php?img=$imagem&w=280&h=180\" width=\"280\" height=\"180\" />";
}

有人可以帮忙吗?提前致谢

3 个答案:

答案 0 :(得分:4)

这段代码看起来很奇怪,但不知道更多我想我不会评论它。

对于实际问题,您可以使用dirnamebasename

$path = dirname($r3['pathURLMult']);
$imagem = basename($r3['pathURLMult']);

答案 1 :(得分:2)

使用pathinfo();

试试这个:

while($r3 = mysql_fetch_array($e3)){ 
    $pathinfo = pathinfo($r3['pathURLMult']);
    define("FOLDER_IMAGES",$pathinfo['dirname']);
    echo "<img src=\"getimage.php?img=".$pathinfo['filename']."&w=280&h=180\" width=\"280\" height=\"180\" />";
}

答案 2 :(得分:1)

这是错误的。你在一个带有变量定义的循环中有一个定义,一个定义应该只发生一次。什么是变量$ r3 [&#39; pathURLMult&#39;]的示例值? (顺便说一句,$ r3,$ e3,$ ped ......我确定你能找到更好的变量名;)