Автор будет очень признателен, если Вы кликнете по одной из белых ссылок выше.
Вам это ничего не стоит, а автору сайта будет приятно ;)
Найдено страниц: 17 [показано 10]
Файлы vs базы данных.
Степень соответствия запросу: 76,32%
Фрагменты текста поста : ... html в определенный день, нужно сперва вычислить сколько дней прошло с 1 января 2000 года до искомой даты, затем «заглянуть» в ячейку массива Пример кода $ar['pages']['/stat... ... Нужно сперва собрать «заготовку», состоящую из домена поисковика и искомой фразы, разделенных двумя символами вертикальной черты, а затем просмотреть все элементы массива («раздел» allsein) на предмет ПОЛНОГО строкового равенства (совпадения)... ... Скрипт считывает в память ВЕСЬ файл статистики, не взирая на размер ( если посещаемость высокая или статистика собирается за большой срок, то это могут быть десятки или даже сотни мегабайт )... ... Язык PHP содержит пару функций ( serialize и unserialize ), предназначенных для преобразования массива в строку и обратно... ... Первая склеивает все элементы массива (разделяя их спец-символами с технической информацией) и возвращает полученную текстовую строку... ... Вторая делает обратное преобразование из строки в массив... ... Прикол в том, что unserialize восстанавливает точную копию исходного массива , даже если он многомерный, даже если его элементы представляют собой тоже массивы, которые в свою очередь тоже содержат массивы... ... Просто одной командой вы можете превратить ваш супер запутанный массив в текст, а второй точно также вернуть все обратно... ... приходится парсить (разбирать) огромный объем текста, выискивая в нем те самые спец-символы, по ним восстанавливать значения исходных ячеек и клеить их в результирующий массив... ... Итак, скрипт загружает текстовый файл и преобразует его в массив... ... Если вы внимательно прочли предыдущий абзац, то уже должны понимать, что при небольшом количестве элементов в массиве операция проходит относительно быстро... ... она требует перебора части (а в худшем случае всех ) элементов массива и для каждого из них необходимо сделать сравнение достаточно длинных текстовых строк... ... com||вася пупкин'] В этом случае для сравнения строк будут использованы встроенные средства языка (библиотечные функции), которые работают гораздо быстрее самих PHP-шных скриптов, но все равно операцию эту быстрой не назовешь... ... Случаи когда с данной поисковой машины еще не было посетителей и нужно создавать целую ветку массива рассматривать не будем... ... Серилизация (склейка элементов массива в строку) и перезапись (опять же) ВСЕГО файла статистики... ... тут затронута обработка данных только из одного «раздела» статистики (а ведь скрипт еще должен скорректировать данные и в остальных), не описан блок, который проверяет доступность сайта для данного юзер-агента и хоста-источника (а он жрет времени тоже немало), не учтены потери на выделение/освобождение памяти и копирование целых веток массива, если автор решил (для упрощения программирования) отделить часть массива например так: Пример кода $as = $ar['allsein']... ... // выделяем данные о заходах с искалок в отдельный массив Все это уже не столь важно... ... А значит парсинг текста и построение массива, равно как и последующая склейка все равно будут выполняться при каждом обращении к скрипту (сайту)... ... И хотя это будет гораздо быстрее чем сканирование массива (за счет работы библиотечных функций) все равно потребует много времени... ... Благодаря тому, что мы проиндексировали поле с именем хоста, мы находим нужную запись в 15 раз быстрее, чем в массиве (буду брать наихудший вариант)... Подробнее: http://fit-media.com/post_1222679684.htmlОптимизация PHP-кода
Степень соответствия запросу: 16,99%
Фрагменты текста поста : ... Передавайте в echo несколько параметров, вместо использования конкатенацию строк... ... Удаляйте свои переменные для освобождения памяти, особенно если это большие массивы... ... Если функции замены строк, может принимать в качестве аргументов как массивы, так и одиночные символы, и если ваш список аргументов не слишком длинный, подумайте над тем, чтобы записать несколько одинаковых выражений замены, проходя один символ за раз, вместо одной строки кода, которая принимает массив поиска и замены Лучше использовать конструкции else if , чем несколько конструкций if... ... Ваши строки, определённые при помощи апострофа, а не двойной кавычки, будут интерпретироваться чуть быстрее, т... ... Конечно, вы можете использовать это только тогда, когда в вашей строке нет переменных... ... Строки, разделённые запятыми, выводятся быстрее, чем строки, разделённые точкой... ... Примечание: это работает только с функцией echo , которая может принимать несколько строк в качестве аргументов... ... При работе со строками, для определения длины строки, вы, разумеется, захотите использовать функцию strlen()... ... Эта функция работает очень быстро, ведь она не выполняет каких-либо вычислений, а лишь возвращает уже известную длину строки, доступную в zval-структуре (внутренняя структура C, используемая при работе с переменными в PHP )... ... функция, она будет работать медленно за счёт вызова некоторых операций, таких как приведение строки в нижний регистр и поиска в хэш-таблице, только после которых будут выполнены основные действия функции... ... За счёт этого isset() не имеет практически никаких накладных расходов на определение длины строки... ... Не определяйте каждую структуру данных в виде класса - массивы бывают намного полезнее... Подробнее: http://fit-media.com/post_1207831883.htmlMySQL: MyISAM хотят заменить на новый движок Maria
Степень соответствия запросу: 3,53%
Фрагменты текста поста : ... Движок Maria - это расширенная версия MyISAM, которая поддерживает весь основной функционал MyISAM и в дополнение к этому предлагает: поддержку восстановления данных после сбоев (data auto-recovery, crash safe), полное логирование (включая операции CREATE, DROP, RENAME и TRUNCATE) и новый формат строк PAGE... ... INSERT и INSERT (множество строк), ALTER TABLE LOAD INDEX может пропускать неиспользуемые индексные блоки Новый блочный формат строк, в котором данные хранятся ввиде страниц При использовании блочного формата строк (выбираемого теперь по умолчанию) строковые данные могут кешироваться Блочные тесты большинства элементов Поддержка как отказоустойчивых (crash safe, транзакциональных) так и нетранзакциональных таблиц... ... (Нетранзакцональные таблицы не логируются и для строк используется меньше места): CREATE TABLE foo (... ... Не поддерживается INSERT DELAYED Не поддерживается кеширование составных ключей Устранение недостатков до следующих релизов Хранение очень малых строк Не поддерживаются MERGE таблицы Различия, которые вероятно не будут устранены Страницы данных в блоковом формате увеличивают размеры: 10 байт на страницу и 5 байт на строки... ... Транзакции и поддержка конкурирующих записей приведут к увеличению: 7 байт на новые строки, 14 байт для удаленных строк Отсутствие внешнего блокирования (MyISAM имеет внешнее блокирование, но оно редко используется) Использование одинакового размера страниц для индекса и данных... Подробнее: http://fit-media.com/post_1202730586.htmlКак Заиконить Сайт
Степень соответствия запросу: 1,7%
Фрагменты текста поста : ... Как в то далекое время любая, даже самая мелкая программа пыталась защемить себя в трей к часам, так и теперь любой, даже самый неказистый сайт старается всунуть свою иконку в адресную строку браузера... ... Но в этом случае Вам придется добавить одну строчку в шаблон вашего сайта... ... ico), то Вам нужно вставлять в HTML-файлы строчку, описанную выше... ... Кроме того, если иконка лежит не в корне сайта, то в этой строчке нужно указать путь к иконке... ... Кстати, поскольку в этой строке можно записать полный путь (включающий домен сайта), то Вы запросто можете прикрепить себе иконку от чужого сайта... ... :) Все, что Вам потребуется - вписать строку AddType image/ICO ICO в файл... Подробнее: http://fit-media.com/post_1212879390.htmlЗалепа №10 Cупер-хренорезка может все. Только хрен не режет.
Степень соответствия запросу: 0,49%
Фрагменты текста поста : ... Интересно, нарисует только строчку с датой или еще и развернутый календарь... ... Никогда бы не подумал, что человеку в здравом уме придет в голову использовать строчку ввода даты как площадку для размещения дополнительных элементов управления... ... Ну коль уж так хочется напихать в календарь еще и прогресс-баров с радио-кнопками и полями ввода RTF-текста, то почему их нельзя перебрать просто как массив... ... Видимо, по мнению майкрософта, пользователи их библиотек настолько тупы, что для них нужно было создать отдельное свойство, а просто сравнить с нулем количество элементов в массиве Controls они не догадаются... Подробнее: http://fit-media.com/post_1202303173.htmlУрок информатики для мелкософта (пояснение к залепе №8)
Степень соответствия запросу: 0,39%
Фрагменты текста поста : ... Дело в том, что это сделано не только (и не столько) для того чтобы избавить пользователя от написания длинных строк... ... Итак, по-пунктам: в строке (1) переменная c становится "дублем" переменной a , т... ... после инициализации в строке (2), значение c... Подробнее: http://fit-media.com/post_1198760520.htmlПошлите серфера на три веселых цифры!
Степень соответствия запросу: 0,39%
Фрагменты текста поста : ... Оправдав тем самым свою разгулявшуюся ленцу перед всем миром (и, в первую очередь, перед самим собой), он не стал разгребать сложные многопапочные запросы, а просто вырезал имя html-файла из строки адреса и этот файл и выдал в броузер... ... В строке адреса можно вводить что угодно - самое большее на что он способен - выдать надпись "Ничего не найдено"... ... com/download/ просто тупо вбив путь в строке адреса своего любимого Microsoft Internet Explorer'а... Подробнее: http://fit-media.com/post_1200930244.htmlПривратник-младший. Турбо-решение.
Степень соответствия запросу: 0,07%
Фрагменты текста поста : ... php строку $allow404 = false... ... на строку $allow404 = true... Подробнее: http://fit-media.com/post_1225008537.htmlYii - перехват запросов
Степень соответствия запросу: 0,07%
Фрагменты текста поста : ... Писать парсер php-файлов ради добавления пары строк в конфиг - далеко не самое умное решение... ... Как оказалось, этот механизм прекрасно подходит для решения вышеописанных задач, нужно лишь добавить пару строк, чтобы заставить фреймворк продолжить обработку запроса, когда все настройки и проверки уже выполнены... Подробнее: http://fit-media.com/post_1313836666.htmlЛинкуем текст в контекст.
Степень соответствия запросу: 0,04%
Фрагмент текста поста : ... php такую строку: include "... Подробнее: http://fit-media.com/post_1225483176.html
