0 / 0 / 0
Регистрация: 09.05.2015
Сообщений: 3
1

Присваивается пустое значение в цикле

20.09.2017, 16:07. Показов 347. Ответов 2

Здравствуйте, подскажите пожалуйста, в чем мб ошибка.

Есть текстовый файл, достаем оттуда массивом элементы, проверяем подходит ли элемент нам, и если подходит, выводим на экран.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
    $file = file(__DIR__ ."/log-post.txt");  //открываем файл
    $count = count($file); //кол-во строк в файле
        
    for ($x=0; $x<=$count; $x++) {
        If ($file[$x] == 'да') {
        $write = $file[$x];
        }
        elseif ($file[$x] == "нет") {
        $write = $file[$x]; 
        }
    
    }
    echo $write;
 
?>
Если закомментировать условие, массив выводится. С условием, переменной "write" - присваивается пустое значение. Текстовик это лог - поэтому нужно таким перебором взять последнее значение (сразу взять последнее значение нельзя).
Текстовик вида:
да
да
нет
да
нет
и тд.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.09.2017, 16:07
Ответы с готовыми решениями:

Не присваивается значение переменной в цикле
Всем здравствуйте. Появилась проблема с присвоением переменной значения в цикле. Вот сам код ...

Макрос: Eсли Х больше Y, то Z присваивается значение Х, в противном случае Z присваивается значение Y
Для проведения отладки макрокоманды составить программу, включающую макрообращение. Макрокоманда,...

Значение присваивается переменной, но не присваивается TexBox
есть функция public static void ControllerInfo(string name, ref string customer, ref int addres)...

Каждому элементу массива, значение которого четное, присваивается значение первого элемента
Помогите написать программу... С клавиатуры вводится массив(его размер и значение элементов заводит...

2
Эксперт PHP
3600 / 3014 / 1264
Регистрация: 01.08.2012
Сообщений: 10,316
20.09.2017, 16:39 2
Цитата Сообщение от Yuraps Посмотреть сообщение
PHP
1
If ($file[$x] == 'да') {
Здесь не просто "да", а ещё символ переноса строки. Исправляется так:

PHP
1
$file = file(__DIR__ ."/log-post.txt", FILE_IGNORE_NEW_LINES);  //открываем файл
Цитата Сообщение от Yuraps Посмотреть сообщение
$x<=$count
Нумерация массива, возвращаемого file(), начинается с нуля, поэтому символ = здесь лишний. Включите отображение ошибок в PHP и увидите Notice на последней итерации.
2
0 / 0 / 0
Регистрация: 09.05.2015
Сообщений: 3
20.09.2017, 16:59  [ТС] 3
Спасибо, то что нужно было.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.09.2017, 16:59

Полю нигде не присваивается значение, поэтому оно всегда будет иметь значение null
Пишу программу которая должна png картинки преобразовывать в матрицу (матрица заносится в...

Не присваивается значение
read aa aa=&quot;$aa&quot; | cut -d -f2 echo $aa я ввожу &quot;111 8688&quot; а хочу чтобы в переменной aa стало...

Не присваивается значение+
Начал недавно изучать js, юзаю простые примеры, вот не пойму почему код не выводит, или не...

Не присваивается значение переменной
Всем привет. Начал писать расширение для Google Chrome, проклял всё на свете... вчера убил целый...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.