|
|
|
|
|
для: Николай2357
(31.07.2009 в 01:52)
| | выполните двоичный вывод содержимого массива, полученного с этой опцией и без.
Дальше можно будет что-то обсуждать. | |
|
|
|
|
|
|
|
для: Petter
(31.07.2009 в 01:16)
| | >Увы, даже протестировать не получилось, так как эта функция array_diff_key() из PHP5!
Здрааасте, приехали.
А мы здесь чем дышим? | |
|
|
|
|
|
|
|
для: Николай2357
(31.07.2009 в 01:52)
| | Возможно она не обрабатывает windows переходы, а unix нормально будет. На Денвере она у меня никогда и не работала. Но строка может содержать лишние пробелы, что может тоже быть причиной нежелательных явлений. Я поэтому считаю, что опция эта для понту, всего не учитывает.) | |
|
|
|
|
|
|
|
для: Trianon
(31.07.2009 в 01:36)
| | Ну вот из моих экспериментов
<?php
$a = file("1.txt",FILE_IGNORE_NEW_LINES); //red green yellow
//a = array_map('rtrim',$a);
$b = file("2.txt",FILE_IGNORE_NEW_LINES); // red
//$b = array_map('rtrim',$b);
$c = array_diff($a, $b);
print_r($c); //выводит red green yellow
|
А в мануале написано
Each line in the resulting array will include the line ending, unless
FILE_IGNORE_NEW_LINES is used, so you still need to use rtrim() if you do not want the line
ending present.
| То есть если не ставить опцию, то нужно rtrim()... Правда это не значит, что если поставить, то не нужно... Но странно все таки. | |
|
|
|
|
|
|
|
для: sim5
(31.07.2009 в 01:36)
| | Спасибо, sim5!
эти строки - результат извлечения из $_REQUEST['']
Да, согласен, в них могут быть лишние пробелы...
И в конце строки тоже символы...
Это очень интересное решение: array_map('trim', ...)
Большое Вам спасибо, как, собственно говоря, и всем остальным, кто проявил сочувствие к вопросу... | |
|
|
|
|
|
|
|
для: Николай2357
(31.07.2009 в 01:20)
| | У меня тоже не работает установка этого флага, я для верности всегда trim использую.) | |
|
|
|
|
|
|
|
для: Petter
(31.07.2009 в 01:16)
| | Странного ничего нет, так как строки ваши имеют символы окончания строки, могут содержать и пробелы случайные. Я же вам не зря сказал "если посмотреть....", и если посмотрели бы, то увидели бы после переворачивания массива вот такое
Плохо, что не РНР5, пора перходить, многое теряете. | |
|
|
|
|
|
|
|
для: Николай2357
(31.07.2009 в 01:20)
| | А можно чуть подробнее? | |
|
|
|
|
|
|
|
для: Trianon
(30.07.2009 в 23:29)
| | Или как вариант, соответствующая опция функции file()
А можно чуть подробнее, FILE_IGNORE_NEW_LINES почему то не отработала... | |
|
|
|
|
|
|
|
для: sim5
(31.07.2009 в 01:01)
| | Спасибо, я попробую разобраться в этом листинге.
Увы, даже протестировать не получилось, так как эта функция array_diff_key() из PHP5!
Как это ни странно, работает вот такой код!
$a = file("colors/top_color1.txt"); //green red yellow
$b = file("colors/top_color2.txt"); // red
$a = array_map('trim', $a);
$b = array_map('trim', $b);
$c = array_diff($a, $b);
echo "<pre>";
print_r($a);
print_r($b);
print_r($c);
echo "</pre>";
|
| |
|
|
|
|