BitTorrent Трекер RusTrek.ru http://5.45.70.241/ |
|
PHP - заметки на полях. Полезные приемы в работе с PHP [2010-2011, ru] http://5.45.70.241/viewtopic.php?f=229&t=20419 |
Страница 1 из 1 |
Автор: | oartemka178 [ 2011-10-31 19:57 ] |
Заголовок сообщения: | PHP - заметки на полях. Полезные приемы в работе с PHP [2010-2011, ru] |
PHP - заметки на полях. Полезные приемы в работе с PHP [2010-2011, ru] #777 Год выпуска: 2010 - 2011 Производитель: jolly-wind Сайт производителя: http://jolly-wind.ru Автор: k0stix aka jolly-wind Продолжительность: 8:21:33 Тип раздаваемого материала: Видеоурок Язык: Русский Описание: Этот курс не является продолжением курса PHP ООП, он абсолютно обособлен. В нем рассматриваются некоторые техники, приемы и аспекты применения языка PHP, которые могут быть сподручными для начинающих веб-программистов или просто любителей поковырять языки программирования не только вширь, но и вглубь. Для просмотра курса необходимы базовые знания языка PHP (в среднем базы, данной в курсах Попова по PHP, будет достаточно). Я пытался сделать все заметки независимыми друг от друга, но все же случаются пересечения тематик, это будет помечено отдельно в содержании. Там, где не отмечено пересечение тематик, уроки можно смотреть в произвольном порядке, где помечено, скорее всего техники демонстрируются с применением приемов из указанных заметок. Но на всякий случай не помешает просматривать в той последовательности, как указано в содержании, мало ли. Некоторый материал не столь уж часто встречается даже в книгах, несмотря на то, что часто требуется в практике реальной разработки. Также рассматриваются некоторые нововведения в php5, которые, по непонятным мне причинам, тоже не всегда входят в некоторые самоучители по php и видеокурсы. Не смотря на то, что я пытался записывать этот курс полностью самодостаточным, все же он записан в рамках двух других курсов по php, как вспомогательный, поэтому, возможно изредка я буду ссылаться те материалы, которых нет в других заметках. То, что курс является "вспомогательным", думаю, не умаляет его полезности, но об этом судить вам. Техники описываются преимущественно в теоретическом разрезе. Некоторые примеры приводятся в отрыве от реального применения с дырами в безопасности. Пожалуй, именно безопасности и будет посвящена очередная серия заметок mn-000-NetBeans-features [Продолжительность: 17:07 + 12:06 = 29:13] В обучающей литературе редко уделяют внимание среде разработки (IDE). Некоторые "зубры" призывают пользоваться notepad-ом, что лично я считаю прогрессирующим маразмом, есть большая разница, между умением писать код в экстремально неудобных условиях и необходимостью это делать. В данной заметке рассмотрим несколько удобных фич, предоставляемых средой разработки NetBeans. Это не попытка приобщить вас к какому-то определенному редактору кода, просто пример того, что можно ожидать и требовать от редактора. Разумеется, это только основы, NetBeans - очень мощная среда и имеет гораздо больше средств. Будут рассмотрены кодовые шаблоны, комментарии FIXME и подобные и групповое переименование. Выбор пал именно на NetBeans по причине его бесплатности и моих предпочтений. Также очень неплохим редактором является eclipse-pdt и имеет определенное кол-во фанатов Aptana. Главный минус у всех троих один - приличная нагрузка на железо, в особенности при работе над крупными проектами (Aptana в этом вопросе - чемпион, на моей не столь уж дохлой машине она валит все). mn-001-cookies-and-sessions [Продолжительность: 30:55] В данной заметке рассмотрены базовые понятия сессий и куков, примеры применения и т.п. mn-002-sessions-without-cookies [Продолжительность: 14:50] (необходимо понимание работы кук и сессий, см. заметку mn-001-cookies-and-sessions) Обычно для работы с сессиями необходимы включенные на стороне пользователя куки. У некоторых неадекватов они могут быть выключены. В данной заметке поясняется как подобную ситуацию можно обойти. Разумеется, в целях безопасности это не применимо для хранения сессий с секретными данными. mn-003-redirects [Продолжительность: 16:04] Очень простая техника и скорее всего не будет ни для кого новостью, но все же. 2 основных вида редиректов: с задержкой и без. mn-004-processing-forms [Продолжительность: 17:38] (необходимо понимание сессий и редиректов mn-001-php-session-cookies и mn-004-redirects) Форма - основной вид общения посетителей сайта с самим сайтом (если не учитывать адресную строку). У начинающих программистов часто возникает проблема повторной отправки данных после обновления страницы. В данной заметке мы решим эту проблему и позаботимся о выводе данных на той же странице, с которой отправили. mn-005-text-files-&-text-editor [Продолжительность: 1:41:50] (необходимо понимание редиректов, сессий и работы с формами см. mn-001-cookies-and-sessions, mn-003-redirects, mn-004-processing-forms) В данной заметке приведен пример работы с текстовыми файлами, объяснение перетекает в реализацию операций CRUD (create, read, update, delete), только вместо таблиц БД используются текстовые файлы. mn-006-php-cli [Продолжительность: 13:22 + 26:08 + 40:29 + 12:21 = 1:32:20] Обычно мы рассматриваем php как язык для написания сайтов, оригинально он для этого и разрабатывался, пишется сайт заливается на сервер - все счастливы. Но также его можно применять и для написания скриптов, автоматизирующих некоторые процессы на пользовательском компьютере, он может послужить альтернативой виндовым bat-файлам или никсовому башу и многим другим скриптовым языкам. PS: собственно, сейчас на PHP можно писать даже приложения с графическим интерфейсом и "компилировать" в исполняемые экзешники. Но это отдельный вопрос и, по моему мнению, использование PHP для этих целий нецелессобразно. mn-007-include_path [Продолжительность: 23:03] Порой бывает удобно создать директорию, где мы будем держать наши библиотеки. Но потом придется каждый раз подключая библиотеки при помощи include или require прописывать полный путь к этой директории. Не то, чтобы это была сильная головная боль, но иногда может оказаться сподручным воспользоваться опытом операционных систем и прописать часто используемые пути в path. Но применять надо с осторожностью (если в двух разных директорий будут файлы с одинаковыми названиями, то подключается тот, который стоит первым в путях) mn-008-autoload [Продолжительность: 08:01] В данном уроке будет продемонстрированно как можно подключить файл с классом без помощи include или require инструкций, тем самым экономя себе время и несколько строчек кода mn-009-php.ini-from-script [Продолжительность: 19:58] php.ini-файл - файл настроек интерпретатора PHP. Часто бывает полезно поменять какие-то его настройки на лету, или просто убедиться, что интерпретатор настроен так, как нам надо. В данной заметке мы узнаем как это делается, какие настройки можно менять и какие нельзя и как это может быть нам полезно. mn-010-filter_input [Продолжительность: 22:26 + 13:35 = 36:01] (необходимо понимание сессий и редиректов mn-001-php-session-cookies и mn-004-redirects) Валидация входных и внутренних данных - важный вопрос безопасности и стабильности работы сайта. В PHP5.2 для этой цели была введена очень удобная ф-ция, и на момент написания этих строк до сих пор не вошла в русские переводы документации PHP (за исключением перевода на офсайте PHP, который почему-то уже убрали). В данном уроке мы провентилируем вопрос использования этой фичи. mn-011-php-in-css [Продолжительность: 06:58 + 24:05 + 17:06 = 48:09] Вам когда-нибудь хотелось задекларировать переменную в css-файле? Или добавить немного динамики в статичные css-файлы, например, менять цвет background фона в зависимости от времени суток? Обычно подобный вопрос решается созданием отдельного css-класса и далее решение переходит в вид, а для использования переменных используются JS-библиотеки. Но JS может быть отключен на стороне пользователя, тогда дизайн поедет в неизвестном направлении, а если писать по классу для каждого времени суток, то это немало строчек займет. В любом случае в данной заметке предлагается более простое решение при помощи PHP. Данная техника позволяет сделать из css-файла полноценно обрабатываемый php-скрипт, можно будет как использовать переменные, так и создавать целые классы в стилевых таблицах (последнее - полный маразм, конечно же, но возможность имеется). NB: лично я никогда не применяю эту технику в том виде, как описано в заметке, меня вообще не колышит, что делает в css верстальщик и какие у него там возникают проблемы. Но при определенной структуре сайта этот прием в сочетании с некоторыми колбэками может иметь и другие применения. А если вы одновременно являетесь и программистом и верстальщиком, то тем более вам может понравиться подобный прием. mn-012-security [Продолжительность: 1:03:31] Пользователь - наш лучший друг. Для него мы должны добавлять как можно больше фич на наш сайт, чтобы он чувствовал себя наиболее комфортно. Пользователь - наш злейший враг, ибо по глупости, злому умыслу или смеха ради может нашему сайту навредить. Эта серия заметок будет посвящена безопасности сайта, защите от злостных хацкеров. Аффтар не возражает против распространения данных видеоуроков и прилагаемых листингов (а также картинок, каталоговой структуры, цитат и т.д.) на другие трекеры, варизники и т.п., перекодирования видео и аудио и прочих измывательств над данным материалом. Каждый, кто скачал данный материал волен распоряжаться им как угодно, за исключением коммерческого распространения и нанесения физического вреда азиатским речным бобрам. Исходник: захват с экрана Качество: соответствующее Файлы примеров: присутствуют Формат видео: MKV Видео: MPEG4 Video (H264) 1024x576 ~80kb/s 15.00fps Аудио: AAC 48000Hz mono ~40kb/s General UniqueID : 243110883290380230027750685429338147781 (0xB6E573F7626C56C2BEA78C54E90F0BC5) Format : Matroska File size : 10.1 MiB Duration : 17mn 7s Overall bit rate : 82.4 Kbps Encoded date : UTC 2010-12-31 17:11:14 Writing application : mkvmerge v2.9.8 ('C'est le bon') built on Aug 13 2009 12:49:06 Writing library : libebml v0.7.7 + libmatroska v0.8.1 Video ID : 1 Format : AVC Format/Info : Advanced Video Codec Format profile : [url=mailto:High@L3.1]High@L3.1[/url] Format settings, CABAC : Yes Format settings, ReFrames : 5 frames Codec ID : V_MPEG4/ISO/AVC Duration : 17mn 7s Width : 1 024 pixels Height : 576 pixels Display aspect ratio : 16:9 Frame rate : 15.000 fps Color space : YUV Chroma subsampling : 4:2:0 Bit depth : 8 bits Scan type : Progressive Writing library : x264 core 98 r1629kMod 2e81ce1 Encoding settings : cabac=1 / ref=5 / deblock=1:0:0 / analyse=0x3:0x113 / me=umh / subme=9 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=32 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=3 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / constrained_intra=0 / bframes=9 / b_pyramid=2 / b_adapt=2 / b_bias=0 / direct=3 / weightb=1 / weightp=2 / keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=crf / mbtree=1 / crf=24.0000 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / ip_ratio=1.40 / aq=2:1.00 Language : English Audio ID : 2 Format : AAC Format/Info : Advanced Audio Codec Format version : Version 4 Format profile : LC Format settings, SBR : No Codec ID : A_AAC Duration : 17mn 7s Channel(s) : 1 channel Channel positions : Front: C Sampling rate : 22.05 KHz Compression mode : Lossy Media Player Classic (view -> options -> output): [b]ffdshow[/b] (Start -> All Programs -> K-Lite codec pack (или любой другой, который установлен) -> Configuration -> ffdshow video decoder): [img][img]http://i072.radikal.ru/1003/03/46447abd49a7.png[/img][/img] [thumb]http://s002.youpic.su/pictures/1293904800/412f0f5342a9666ed23e3478fd2f42ce.png[/thumb][thumb]http://s002.youpic.su/pictures/1293904800/222ca549237136d52f92de1ddbde91a1.png[/thumb][thumb]http://s002.youpic.su/pictures/1293904800/658bfe2ac60ec18f6ec1737d1df12c0f.png[/thumb][thumb]http://s002.youpic.su/pictures/1293904800/ceb656e5084752c297bb20a16a8d3890.png[/thumb] Отличие от http://tapochek.net/viewtopic.php?t=68015 в том, что здесь добавлен 12 урок |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |