Php 除了这场混乱的爆炸,还有什么可能的最佳选择吗?

Php 除了这场混乱的爆炸,还有什么可能的最佳选择吗?,php,explode,Php,Explode,我有一个thumb生成器脚本,需要我使用define来指示文件夹的路径。。。我从mySQL文件中选取了一个it,格式为/images/gallers/name/imagem.jpg 我想我是在用noob的方式做这件事。。。一定有更好的办法 while($r3 = mysql_fetch_array($e3)){ $path = $r3['pathURLMult']; $ped = explode("/", $path); $path2 = $ped[0] . "/" .

我有一个thumb生成器脚本,需要我使用define来指示文件夹的路径。。。我从mySQL文件中选取了一个it,格式为/images/gallers/name/imagem.jpg

我想我是在用noob的方式做这件事。。。一定有更好的办法

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\" />";
}

有人能帮忙吗?提前感谢

这段代码看起来很奇怪,但不知道更多,我想我不会对此发表评论

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


这是错误的。如果在具有变量定义的循环中有一个define,那么define应该只发生一次。变量$r3['pathURLMult']的示例值是什么?顺便说一句,$r3,$e3,$ped。。。我相信您可以找到更好的变量名

使用路径信息

试试这个:

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\" />";
}

执行的查询可能只针对一条记录,我见过没有经验的程序员多次使用while构造。。。但是在这种情况下,我真的需要多次定义这个变量!不,我的意思是你不能重新定义你已经定义的东西。PHP将抛出一个通知,常量将保留您分配给它的第一个值。定义是永久的,直到脚本结束。谢谢!像我想要的那样工作,并且大大简化了代码!我也不知道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\" />";
}