Здравствуйте, подскажите пожалуйста почему не работает rand() в скрипте PHP: $count_dirs = 20; for ($i=0;$i<$count_dirs;$i++){ $text = file_get_contents('C:/art/'.$i.'/text.txt'); если вставить вместо $i переменную rand() выдает неизветную ошибку PHP: $count_dirs = 20; for ($i=0;$i<$count_dirs;$i++){ $rnd = rand(0,20); $text = file_get_contents('C:/art/'.$rnd.'/text.txt'); как сделать чтобы работало? От модератора: Используй кнопку </> при вставке кода
ну что то подобное выдает PHP Warning: Undefined variable $rndnput Fatal error: Uncaught Error: Call to a member function set_value_by_name() on null --- Добавлено --- почему пишет $rndnput если переменная $rnd?
@maggocha 1. Цикл по $i в приведённом коде идёт от 0 до 19, включительно. То есть, $rnd может получить значение, выходящее из диапазона разрешённых. 2. Где в вашем коде вызывается метод set_value_by_name()? Текст ошибки означает, что пытаетесь вызвать метод из переменной, от которой ожидаете, что она является каким-то объектом, а на самом деле имеет значение null. --- Добавлено --- Значит, где-то написали именно это В тексте ошибки ещё имя файла и строка должны быть написаны
так в том то и дело, set_value_by_name() не может получить данные отсюда $text = file_get_contents('C:/art/'.$rnd.'/text.txt'); потому что $rnd в пути к фйалу не работает, если в пути стоит $i то все работает
спасибо вам, действительно сам $rndnput написал плюс метод не тот выбрал, просто думал что конфликт какой то между циклом и rand(), все работает благодарю