Заполнение базы данных из каталога - PullRequest
1 голос
/ 24 марта 2011

Я хотел бы отсканировать каталог с файлами изображений и заполнить их моей базой данных. Изображения имеют регулярные и контролируемые имена, такие как top_1, top_200, bottom_3. Мне нужна помощь с регулярным выражением, которое будет соответствовать слову перед '_', потому что каждое из них имеет разные отношения в БД.

Что у меня сейчас для сканирования каталога:

function scan_img_dir()
    {

            $dir = '/images/';  
            $scan = scandir($dir);  

            for ($i=0; $i<count($scan); $i++) 
            {  
                //Being Pseudocode
                $stringBeforeUnderscore = Some_String_Manipulation($scan[$i]);
                switch($stringBeforeUnderscore)
                {
                    case 'top':
                        insert into db with the top relationship
                        break;
                    case 'bottom':
                        insert into db with the bottom relationship
                        break;
                }
            }  


    }

Любая помощь с кодом для вытягивания строки до '_' была бы полезной. Любая помощь по улучшению логики или кода в противном случае была бы обледенением! Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 24 марта 2011
$stringBeforeUnderscore = substr($scan[$i], 0, strpos($scan[$i], '_'));
1 голос
/ 24 марта 2011
$str = 'asd_asdad_aef';

preg_match_all('/([^_]*)/', $str, $matches);

$stringBeforeUnderscore = $matches[0][0];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...