Проблема с рекурсией

158
25 августа 2018, 14:00

Возможно я просто не силен в данной сфере, но задача состоит в том, что я присылаю на сервер название файлов, оно уже их ищет и записывает данные в БД.

$server = "server";
$search_file = $_POST['search_file'];
echo "вы прислали на сайт следующие данные:<br>";
foreach ($search_file as $item) {
    echo $item . "<br>";
    $str = "";
    $aqa = search_file($server, $item, $str);
    echo $aqa;
}
function search_file($path, $fileName,$sq)
{
    $dir = opendir($path);
    while ($d = readdir($dir)) {
        if ($d == '.' || $d == '..') continue;
        if (is_file($path . '/' . $d)) {
            if ($d == $fileName) {
                $sq .= $path . '/' . $d ;
                // echo $path . '/' . $d . "<br>";
            }
        } else if (is_dir($path . '/' . $d)) {
            search_file($path . '/' . $d, $fileName,$sq);
        }
    }
    return $sq;
}

Почему то моя переменная обновляется, хотя объявляю я ее за пределами первого вызова. как решить данную проблему?

Answer 1
while ($d = readdir($dir)) {

замените на:

while (false !== ($d = readdir($dir))) {
READ ALSO
В один файл приходят и GET и POST

В один файл приходят и GET и POST

Как на php грамотно сделать чтобы в одном фале было следующее: если нет ни POST ни GET выводим формуесли GET ищем в БД по ид записи

156
возвращение значений с помощью curl

возвращение значений с помощью curl

такой вопрос, я с помощью curl отправляю некий массив

176
Не подключается к MySQL из другой страницы

Не подключается к MySQL из другой страницы

задам довольно странный вопросЕсть сайт на двух языках (рус и анг) в корне директории public_html находится русская версия а внутри этой директории...

170
Не находит логин в базе данных

Не находит логин в базе данных

К бд подключился (readbeanphp) успешно в столбике users есть юзер с логином kek, но он выводит что не найден тк как $user пустойПочему так?(

187