|
|
|
| почему не выполняется условие сравнения, выдает ответ неверно при любых записей в файлах, в файлах записаны два числа
<?php
$a=fopen('input.txt','r+');
$b=fopen('output.txt','r+');
if($a==$b) {
echo("молодец");
}else {
echo("неверно");
}
?> | |
|
|
|
|
|
|
|
для: 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 | |
|
|
|
|
|
|
|
для: cheops
(03.03.2005 в 23:02)
| | спасибо за помощь, но если использовать file_get_contents ответ неверен. почему так? попробуйте проверить в файле записаны два одинаковых числа, php выдаст ответ неверно | |
|
|
|
|
|
|
|
для: stin
(03.03.2005 в 23:10)
| | Хм... у меня скрипт отработал нормально, сообщите пожалуйста версию PHP и если вам не сложно выложите файлы - может невидимые символы затесались? | |
|
|
|
|
|
|
|
для: cheops
(04.03.2005 в 00:29)
| | Да,вы были правы, удалил старые создал новые все работает,большое спасибо | |
|
|
|
|
|
|
|
для: cheops
(03.03.2005 в 23:02)
| | cheops я слышал, что от файла можно получить md5 хеш. Для этого обязательно нужно получать его содержимое? | |
|
|
|
|
|
|
|
для: 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 | |
|
|
|