Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: сравнение двух файлов
 
 автор: stin   (03.03.2005 в 22:55)   письмо автору
 
 

почему не выполняется условие сравнения, выдает ответ неверно при любых записей в файлах, в файлах записаны два числа
<?php

$a=fopen('input.txt','r+');
$b=fopen('output.txt','r+');
if($a==$b) {
echo("молодец");
}else {
echo("неверно");
}
?>

   
 
 автор: cheops   (03.03.2005 в 23:02)   письмо автору
 
   для: stin   (03.03.2005 в 22:55)
 

Дело в том, что функция fopen возврщает не содежимое файлов, а дескрипторы, по которым осуществляется чтение - они специально подбираются таким образом, чтобы при любых условиях не совпадали с другими дескрипторами, для того чтобы PHP мог различать различные открытые файла. Ессли вы хотите сравнить содержимое, лучше воспользуйтесь функцией file_get_contents
<?php
$a
=file_get_contents('input.txt');
$b=file_get_contents('output.txt');
if(
$a==$b)
{
  echo(
"молодец");
}
else
{
  echo(
"неверно");

?>


http://www.softtime.ru/dic/id_dic=174&id_group=6

   
 
 автор: stin   (03.03.2005 в 23:10)   письмо автору
 
   для: cheops   (03.03.2005 в 23:02)
 

спасибо за помощь, но если использовать file_get_contents ответ неверен. почему так? попробуйте проверить в файле записаны два одинаковых числа, php выдаст ответ неверно

   
 
 автор: cheops   (04.03.2005 в 00:29)   письмо автору
 
   для: stin   (03.03.2005 в 23:10)
 

Хм... у меня скрипт отработал нормально, сообщите пожалуйста версию PHP и если вам не сложно выложите файлы - может невидимые символы затесались?

   
 
 автор: stin   (04.03.2005 в 16:36)   письмо автору
 
   для: cheops   (04.03.2005 в 00:29)
 

Да,вы были правы, удалил старые создал новые все работает,большое спасибо

   
 
 автор: Artem S.   (04.03.2005 в 05:58)   письмо автору
 
   для: cheops   (03.03.2005 в 23:02)
 

cheops я слышал, что от файла можно получить md5 хеш. Для этого обязательно нужно получать его содержимое?

   
 
 автор: cheops   (04.03.2005 в 09:17)   письмо автору
 
   для: Artem S.   (04.03.2005 в 05:58)
 

Нет можно не извлекать содержимое а пользоваться функциями с модификатором _file: md5_file, sha1_file:
<?php
  $hash 
md5_file("filename.txt");
?>


http://www.softtime.ru/dic/id_dic=32&id_group=1

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования