|
|
|
|
|
|
Рассылки Subscribe.ruПопулярное содержимоеЗа сегодня: |
Статьи по программированиюЧитаемая разбивка текста на страницыЗадача описанная в заголовке иногда возникает в разработке сайтов. Суть в следующем: есть очень большой текст (мегабайты), который хотелось бы не выдавать в одну страницу, а разбить на некоторое количество кусков примерно одинакового размера. Объём и структура текста заранее неизвестны. В качестве входных параметров выступают сам текст и номер страницы, которую надо показать. И важное замечание: речь пойдёт о просто текстах без какой-либо HTML-разметки. Тех самых, что живут в файлах с расширениями .txt и MIME-типом text/plain. Первый вариант кода, что приходит в голову выглядит так: Программное определение статуса Skype через сервисы skype.com
Программное определение статуса ICQ через сервисы icq.com
Ограничение числа подключений при скачивании файлов в PHPРазвивая тему закачки файлов через скрипты PHP с ограничением скорости рассмотрим ограничение количества скачиваемых файлов. Для ограничения количества закачиваемых файлов, по какому-либо критерию, нам потребуется организовать обмен данными между двумя копиями одного скрипта, запущенными в пределах сеанса клиента. Это можно организовать через сохранение информации о запуске скрипта в базе данных или файле, установкой «куки» или использованием сессионных переменных. Правда, ограничения привязанные к сессии или cookie вряд ли могут надёжно помочь нам в этом случае. Клиенту достаточно очистить cookies или воспользоваться другим браузером или программой закачки. Единственный реальный на мой взгляд способ должен использовать ограничение количества закачиваемых файлов на основе IP-адреса клиента. Ограничение скорости скачивания файла в PHPВ предыдущей заметке я рассмотрел способы отдачи файла через скрипт PHP. Приведенная там функция file_download() позволяет отдать произвольный файл, имя которого может быть параметром скрипта или быть заданным константой. Скорость закачки этого файла будет определятся только возможностями сервера и канала связи между ним и клиентом. В случае большого количества подключений к одному или нескольким файлам через скрипт, может наблюдаться перегрузка сервера. Один из методов борьбы с такой перегрузкой – это ограничение как скорости скачивания файла, так и числа подключений от одного клиента или IP-адреса. Поскольку файл у нас отдаётся клиенту программно, то и регулировать скорость отдачи файла и число подключений мы будем таким же образом. Скачивание файлов в PHPМногие ресурсы используют файловые хранилища. Кроме возможностей загрузки и хранения файлов, бывает необходимо организовать их скачивание. Одно дело когда файлы лежат в открытом доступе, но и тогда может потребоваться передача файла через PHP. Например, администратору ресурса может быть нужна информация о количестве скачиваний. Для файлов большого объема до сих пор требуется возможность докачки, что пожалуй и является самым трудным моментом для серверных скриптов. Посмотрим как можно организовать работу скрипта на PHP, который позволяет реализовать все вышеуказанные возможности. Krumo versus print_r() & var_dump()Заголовок у заметки, конечно, не очень получился. Какое противостояние может быть между боксером-тяжеловесом и забиякой-пятикласником? С появлением Krumo обе вышеуказанные функции PHP можно смело отправлять на свалку истории. Самые главные функции PHPВсе, кто занимается разработкой и написанием кода делают ошибки. Это относится не только к PHP, а к любому языку программирования. Потому средства отладки занимают важное место в арсенале любого программиста. PHP ими тоже не обделён. Ошибки фатальные, связанные с неправильным синтаксисом обычно выдаются прямо в браузер. Статические переменные, function_exists и быстродействиеИтак, есть очень часто используемая функция из которой может вызываться другая. А может и не вызываться. Чтобы вызвать вторую функцию в первой проверяется ее существование. Существует - вызываем, не существует - не вызываем. Проверка существования искомой функции производится посредством функции function_exists. Т.е. при каждом вызове первой функции проверяется наличие второй. И так тысячу раз. Или мильён. Есть и второй вариант построения такого алгоритма работы. В первой функции при первом вызове проверяем наличие второй и сохраняем эту информацию в статическую переменную. Далее пользуемся значением этой переменной, чтобы определить надо ли вызывать вторую функцию. А что быстрее? Матросы на зебрахъ, или Как раскрасить Drupal в цвета российского флагаВозникла тут с дикого утреннего бодуна после отгремевшего вчера предновогоднего корпоративчика мысль раскрасить друпал в цвета российского флага. Точнее его таблицы. Возможность отличить четную строку таблицы от нечетной предоставляется в ядре Drupal, в стандартом выводе таблиц для каждой строки tr присутствуют классы odd и even. А при выводе нод есть переменная с метким названием $zebra, указывающая на четность или нечетность ноды в списке. Но иногда возникает необходимость (дизайнер, гад, нарисовал) отличать каждую третью или десятую строку таблицы и соответствующим образом изменять её внешний вид при помощи CSS-правил. Теги
PHP
подсветка синтаксиса
поисковики
Типографика
фрик-инкубатор
ну и ну!
техподдержка
Путеводители
Фото
погода
хак
функции PHP
drupal 5
мошенники
whois
снег
IMCE
PHPtemplate engine
скульптура
непонятки
diff
Form API
Skype
шаблоны
фильтры контента
криминал
ICQ
captcha
drupal 6
спам
joomla
Китайские зарисовки
CCK
профили установки
Drupal API
отладка кода
Google Maps
Google
Generic Syntax Highlighter
прогулки
мой сайт
закачка файлов
университеты
браузер
проишествия
разработка сайтов
рассылка
Автоматические транскрипции
рекламная пауза
Портфолио
модули
Приморские струны
Владивосток
Компьютерная лингвистика
устранение ошибок
Image Field
drupal
imceimage
таксономия
дети
|
|
Direqtor Home Page by ASIADATA. |
|
Последние комментарии
2 дня 5 часов назад
2 дня 22 часа назад
1 неделя 12 часов назад
1 неделя 1 день назад
1 неделя 3 дня назад
1 неделя 3 дня назад
1 неделя 3 дня назад
1 неделя 6 дней назад
2 недели 3 дня назад
2 недели 3 дня назад