... foreach ($lines as $line_num => $line) { $line = chop($line); ... или $line = trim($line); или $line = rtrim($line); проблема в том что в конце каждой считанной из файла строки содержится символ переноса на новую строчку
Выше уже предложили отличный вариант с array_map, а твой вариант не сработает. Чтобы сработал, надо делать так: PHP: foreach ($lines as $line_num => &$line) { //& добавили
Привет,хочу написать по типу хелпдеска , с использованием php+mysql, с добавлением заявок,админ панели. Подскажите с чего начать..
Давно начал замечать странности с chr() и ord(), если им передавать произвольные значения (строка вместо символа, символ юникода, число не входящее в диапазон 0, 255) ведут себя каким-то непредсказуемым образом. Как понять логику их работы с такого рода данными?
AnGeI ord - не строковое значение приводится к строке по стандартным для пхп правилам: http://ru.php.net/manual/en/language.types.type-juggling.php Дальше берется ascii значение первого символа строки. chr - не целое значение приводится к целому по правилам из вышеописанной ссылки, дальше число берется по модулю 256 и возвращается символ из таблицы ascii
В PHP есть ссылки. Открой на php.net мануал по foreach и увидишь там такие же примеры изменения значений массива с использованием ссылок и foreach.
Я ж не говорю, что ссылок нет. Чтобы не возникало лишних споров и т.д. Человек спросил почему у него проблемы с многострочными файлами, b3 предложил обработать сразу весь файл, я предложил "по мере нужды". Вот это PHP: foreach ($lines as $line_num => $line) { было взято из http://forum.antichat.ru/showpost.php?p=2912701&postcount=19740 на php.net в мануале есть примеры и без ссылок...
В массиве 10 значений. Как сравнить между собой все значения массива и вывести сколько значений совпадает и сколько раз. Например: PHP: <?php $array = (1, 5, 5, 5, 2, 2, 7, 9, 3, 9); //скрипт должен вывести, что 5 //встречается 3 раза, 2 встречается 2 раза, и 9 встречается 2 раза. ?>
PHP: ob_flush(); for($i=1;$i<=20;$i++) { echo $i; flush(); sleep(1); } ob_end_flush(); Должна выводится новая цифра каждую секунду. Почему нету вывода?
AnGeI 1) функции ob_* и flush без префикса работают с разными буферами и для определенности лучше использовать обе функции одновременно: flush();ob_flush(); 2) Цифры выводятся, браузеры имеют привычку сами буферизовать некоторое количество байт из начала (512 где-то) и только после этого начинают выводить данные.
Gifts, теперь работает PHP: ob_start(); for ($i = 0; $i < 5; $i++) { echo str_repeat(' ', 5122); echo $i; flush();ob_flush(); sleep(1); ob_clean(); } Но теперь нужно как-то не пустить в вывод пробелы, которыми дополнялся буфер. Это возможно как-то сделать?