За последние 24 часа нас посетил 30541 программист и 1800 роботов. Сейчас ищут 944 программиста ...

Изменение типа данных при чтении из файла

Тема в разделе "PHP для новичков", создана пользователем Sinsir, 4 окт 2009.

  1. Sinsir

    Sinsir Активный пользователь

    С нами с:
    27 май 2009
    Сообщения:
    60
    Симпатии:
    0
    Столкнулся с проблемой следующего типа:
    Отправляю данные из формы в текстовый фaйл
    $first=$_REQUEST["znak"];/* допустим мы получаем математический знак "-" из формы*/
    /* создаем файл и записываем туда полученный знак */
    $filename="znak.txt";
    $filepointer=fopen($filename,"a+");
    fclose ($filepointer);
    $filename="znak.txt";
    $filepointer=fopen ($filename,"r");
    $array=file ($filename);
    fclose ($filepointer);
    /* извлекаем данные из текстового файла в массив */
    $znaks=$array[0];

    Атеперь вопрос:
    if($znaks=="-");
    echo "-"

    Такое действие неполучаетса потому что знак "-" уже не являетса равным знаку "-" .
    Почему?
    Тоесть если я бы не помещал его в текстовый файл а просто поместил его в массив то это равенство работает , но после того как данные попали в текстовый файл -равенство уже неполучаетса.
    Как мне это исправить?
     
  2. Sinsir

    Sinsir Активный пользователь

    С нами с:
    27 май 2009
    Сообщения:
    60
    Симпатии:
    0
    Прошу прощения. Кажетса я уже нашел в чем проблема (просто недумал что решение вдруг само найдетса).
    Во время записи после знака стоял символ переноса строки на следующую. Естественно его на глаз невидно в текстовом фале но програма его учитывает. Поэтому при стравнивании нужно учитывать все символы "'-' \n\r".


    P.S. Модератор может удалить эту тему на свое усмотрение.