Xpressengine\Storage\Storage::countByMime PHP Method

countByMime() public method

mime 별 파일 갯수 반환
public countByMime ( callable $scope = null ) : array
$scope callable 검색 조건
return array ex.) [mime => count]
    public function countByMime(callable $scope = null)
    {
        $model = $this->createModel();
        $query = $model->getConnection()->table($model->getTable());
        if ($scope) {
            call_user_func($scope, $query);
        }
        $rows = $query->groupBy('mime')->select(['mime', new Expression('count(*) as cnt')])->get();
        $array = [];
        foreach ($rows as $row) {
            $row = (array) $row;
            $array[$row['mime']] = $row['cnt'];
        }
        return $array;
    }

Usage Example

 public function testCountByMime()
 {
     list($handler, $repo, $auth, $keygen) = $this->getMocks();
     $instance = new Storage($handler, $repo, $auth, $keygen);
     $repo->shouldReceive('countGroupBy')->andReturn(10);
     $this->assertEquals(10, $instance->countByMime());
 }