Php 循环-我只是在努力解决这个问题

Php 循环-我只是在努力解决这个问题,php,mysql,Php,Mysql,好的,我已经盯着这段代码看了好几个小时了,现在我在挠头,知道有一种方法可以做我需要做的事情,但我正在试图找出它:/ 基本上,我在一个子文件夹中有图像,每个子文件夹都有一个视图。我需要做的是在每个视图的每个子文件夹中输出文件名和附加编号 现在我有一个循环,用于将数字附加到具有单个子文件夹类型的文件名中,但我要做的是在每个子文件夹中迭代,并输出相同的内容,但每个子文件夹都是如此,而不仅仅是一个子文件夹 $ticker = "RRST"; $i = 0; $last = ''; $query = m

好的,我已经盯着这段代码看了好几个小时了,现在我在挠头,知道有一种方法可以做我需要做的事情,但我正在试图找出它:/

基本上,我在一个子文件夹中有图像,每个子文件夹都有一个视图。我需要做的是在每个视图的每个子文件夹中输出文件名和附加编号

现在我有一个循环,用于将数字附加到具有单个子文件夹类型的文件名中,但我要做的是在每个子文件夹中迭代,并输出相同的内容,但每个子文件夹都是如此,而不仅仅是一个子文件夹

$ticker = "RRST";
$i = 0;
$last = '';

$query = mysql_query( "SELECT * FROM baseimage JOIN art ON base_folder = series_code WHERE art.ticker = '$ticker' ORDER BY base_folder" );
if( !$query ) {
 die( mysql_error() ); 
}

while($row = mysql_fetch_array($query)) {

if( $row['COUNT(base_folder)'] < 1 && $row['image_type'] == 'B' && $row['view'] == 'FF' ) {
    if( $last !== $row['base_folder'] ) {
         $i = 0;
    }
   echo $row['base_folder']."-".$i++;

           echo "<br />";
    $last = $row['base_folder'];
     echo "<hr />";
}

}
$ticker=“RRST”;
$i=0;
$last='';
$query=mysql\u query(“从baseimage中选择*加入基础上的艺术\u文件夹=系列\u代码,其中art.ticker=“$ticker”按基础上的文件夹排序”);
如果(!$query){
die(mysql_error());
}
while($row=mysql\u fetch\u array($query)){
如果($row['COUNT(base_folder)]<1&&$row['image_type']=='B'&&&$row['view']=='FF'){
如果($last!=$row['base\u folder'])){
$i=0;
}
echo$row['base_folder']。“-”$i++;
回声“
”; $last=$row['base_folder']; 回声“
”; } }
现在这是工作,但我想改变这一行:

if( $row['COUNT(base_folder)'] < 1 && $row['image_type'] == 'B' && $row['view'] == 'FF'
if($row['COUNT(base_folder)”)<1&&&$row['image_type']='B'&&$row['view']='FF'
这样,it就可以在多个['image\u type']和多个['view']之间循环,而不必对image\u type和view进行硬编码


有人能帮我吗?

你可以在数组中设置image_type和view的预期值,并在其中进行循环

听起来像是递归函数的一项工作。你可以将sql查询抽象为一个获取parent=x的函数。然后让函数构建一个数组或对象,如果需要,可以递归调用它自己如果没有结果,查询会返回结果或返回对象或数组。有意义吗?好吧,希望它至少能让你开始。我现在正处于工作的中间,所以我不能把它全部打印出来。哦,天哪,我必须破译你刚才说的话,但我非常感谢你的帮助。了解您正在使用的数据结构实际上可能会有所帮助。我指的是baseimage和art的专栏。我上面的建议仅在您将每个文件夹存储为自己的行并指定父文件夹时有用。但是,如果不以这种方式存储数据,递归函数将毫无意义。因此,您要求image_type和view不是静态的。但是,您没有指定这些数据是否来自预期的数据集。比如-总是A,B,C还是D?或者它是动态的,可以是任何东西?如果已设置,则可以使用切换案例生成结果。开关($row['image_type']){case'A'://执行某些中断;case'B'://执行其他中断;}****请原谅格式错误。我的整个回答不应该是评论,是的,可以是任何东西。目前只有有限的数据集,但要进行扩展,它必须扩展到更多数据集。下面是数据结构:表名:baseimage列:basefolder、graphic、image_类型、view、image_类型和view是可能增长的类型好的,我可以尝试编写它。非常感谢。