如何更正此文件计数?

时间:2016-10-17 作者:glvr

虽然这更像是一个普通的php问题,而不是WordPress,但它与WP中使用的函数有关,所以我在这里发布了。

我使用下面的代码来计算文章作者的数量(文件夹中每个作者有一个jpg)。

发布的计数比实际数多一个。。。目前,53个JPG显示为54个。

function item_count() {
$dir = \'PATH TO FOLDER\';
$filecount = 0;
$d = dir( $dir );
while ( $f = $d->read() ) {
if ( ( $f!= "." ) && ( $f!= ".." ) ) {
if( ! is_dir( $f ) ) {
$filecount++;
}}}
return \'\' . $filecount . \'\';
}

add_shortcode( \'count\', \'item_count\' );

1 个回复
最合适的回答,由SO网友:TheDeadMedic 整理而成

你说得对——这是一个非常普遍的PHP问题。但是fwiw,问题是您显然想统计所有JPEG文件,但您的示例代码统计所有文件,所以。。。

while ( false !== $f = $d->read() ) {
    if ( in_array( strtolower( pathinfo( $f, PATHINFO_EXTENSION ) ), [ \'jpg\', \'jpeg\' ] ) )
        $filecount++;
}