Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak wyszukiwać obrazy według nazwy w folderze?

To wygląda jak praca dla glob , który zwraca tablicę nazw plików pasujących do określonego wzorca. Wiem o drugiej opublikowanej właśnie odpowiedzi, ale podajmy alternatywę dla wyrażenia regularnego.

Zgodnie z najwyższym komentarzem na stronie z dokumentami, możesz zrobić coś takiego:

<?php
    $dirname = "photos";
    $filenames = glob("$dirname/*{380,381,382,383,384,385}*", GLOB_BRACE);

    foreach ($filenames as $filename)
    {
        echo $filename . "<br />";
    }
?>

GLOB_BRACE Opcje pozwalają określić listę wartości w nawiasach klamrowych, a gwiazdki wokół nich umożliwiają umieszczenie tych liczb w dowolnym miejscu nazwy pliku. Następnie możesz iterować po zwróconej tablicy i robić, co chcesz za pomocą $filename .

Możesz użyć swojego przykładu for pętla, aby automatycznie zbudować ciąg do przekazania do glob .

Oto wynik, kiedy uruchomiłem to w utworzonym przeze mnie katalogu testowym:

photos/380.zip
photos/asdf382ghj.txt
photos/385.bmp

Zauważ, że inny plik, który tam umieściłem, a386b.xlsx , nie pasuje do wzorca i nie pojawia się na liście.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. rzucić ciąg na czas sql

  2. Wstawianie wpisu do kolumny JSON w postgresie

  3. Ograniczenie klucza podstawowego MySql z nazwą

  4. Najlepsza wydajność MySQL DigitalOcean — ScaleGrid kontra zarządzane bazy danych DigitalOcean

  5. kod php do generowania wielu wierszy z niestandardowym kodem