• Функция glob() в PHP?

    DevMan
    @DevMan
    Создаём 200к файлов:
    #!/bin/bash
    
    dir="/test"
    
    ctr=1
    range=30000
    while [  ${ctr} -lt 200001 ]; do
    	id=${RANDOM}
    	let "id %= ${range}"
    	`touch "${dir}/${id}_${ctr}.jpg"`
    	let ctr=ctr+1 
    done

    Проверяем:
    ~> ./test_glob
    ~> ls -1 /test | wc -l
    200000
    

    Тестируем производительность:
    <?php
    
    $dir = '/test/';
    $id = rand( 1, 30000 );
    $pattern = $dir . $id . '_*.jpg';
    
    $time_start = microtime(true);
    
    $photos = glob( $pattern );
    
    $time_end = microtime(true);
    $time = $time_end - $time_start;
    
    echo 'execution time is ', $time, ' seconds', PHP_EOL;
    
    print_r($photos);
    

    ~> php ./test_glob.php 
    execution time is 0.15708804130554 seconds
    Array
    (
        [0] => /test/23513_10050.jpg
        [1] => /test/23513_10631.jpg
        [2] => /test/23513_121888.jpg
        [3] => /test/23513_150044.jpg
        [4] => /test/23513_167985.jpg
        [5] => /test/23513_185798.jpg
        [6] => /test/23513_188480.jpg
        [7] => /test/23513_193143.jpg
        [8] => /test/23513_68603.jpg
    )
    


    Делаем выводы.
    Ответ написан
    2 комментария