Замахался сегодня нащупывать проблему.
У меня простая самодельная функция, которая извлекает информацию из текстового файла. Я использую file(), чтобы сразу получать построчный массив, и не возиться с fopen() и fclose(). Мой код получает этот массив, разыскивает в нем все, что надо и возвращает результат. Это все работает прелестно.
Но вот понадобилось мне обратиться к этой процедуре ДВАЖДЫ подряд (разные данные получить из того же файла) - и она нифига не работает. Первый запрос возвращает нормально, а на второй возвращает пустую строку.
Может ли быть, что после фукнции file() системе не хватает времени закрыть файл, прежде чем случится следующее обращение? Я просто не представляю, какие еще причины могут мешать функции сработать дважды подряд - кроме какого-то конфликта во времени. Что посоветуете, мастера?
1. Мумрик - 03 Августа, 2014 - 01:53:38 - перейти к сообщению
2. Мелкий - 03 Августа, 2014 - 05:31:22 - перейти к сообщению
Код где?
При том, построчно удалите из него все строки, после удаления которых ошибка сохраняется. То, что останется - и будет причиной ошибки.
При том, построчно удалите из него все строки, после удаления которых ошибка сохраняется. То, что останется - и будет причиной ошибки.
3. Viper - 03 Августа, 2014 - 05:31:26 - перейти к сообщению
Мумрик пишет:
Но вот понадобилось мне обратиться к этой процедуре ДВАЖДЫ подряд (разные данные получить из того же файла) - и она нифига не работает. Первый запрос возвращает нормально, а на второй возвращает пустую строку.
при вызове file() ? Или при вызове вашей функции?
Кусок кода хоть приведите чтобы не гадать по бубну.