我有一个图片上传脚本,用于创建新图像并将其保存到目录中。我想计算该目录中的图像数量,这样我就可以将该总数加一,添加到我的新图像名称中。该目录位于public_html目录中。
另外,我想使用一个三位数的编号系统,这样如果数字说明,只有一个数字比我的开关在前面增加两个零,使其成为一个三位数字。
我的PHP脚本:
<?php
$directory = "/galleries/painting_parties/" ;
$directory_list = scandir( $directory ) ;
$numb = count( $directory_list ) ;
++$numb ;
$numb .= "" ;
$numblen = strlen( $numb ) . "" ;
switch( $numblen )
{
case "1" : $n = "00" . $numb ; break ;
case "2" : $n = "0" . $numb ; break ;
case "3" :
default : $n = $numb ;
}
$new_image_name = $directory . "marias_art_" . $n . "_new_image.jpg" ;
?>
答案 0 :(得分:3)
如果目录是问题,请尝试不使用这样的前导斜杠,因为前导斜杠表示转到根目录然后再从那里开始
$directory = "galleries/painting_parties/" ;
看起来还有很多不必要的代码
尝试
<?php
$directory = "/galleries/painting_parties/" ;
$directory_list = scandir( $directory ) ;
$numb = count( $directory_list ) ;
// maybe subtract 2 for the . and .. directories, up to you
// $numb -= 2;
// make it a 4 char num with leading zeros
$n = sprintf('%04d', ++$numb);
$new_image_name = $directory . "marias_art_" . $n . "_new_image.jpg" ;
?>