Как стать автором
Обновить
0
0
Юрий @keilman

Пользователь

Отправить сообщение

Приведение типов в PHP == табурет о двух ножках?

Время на прочтение4 мин
Количество просмотров55K
image

— В PHP приведение типов работает нормально, надо только включать здравый смысл.
— А чего там, просто сравниваешь и все…
— Ого, глюк какой-то в PHP, смотри, сравниваю два флоата, они должны быть одинаковые, а он мне говорит, что они не равны.
— А, ну когда число со строкой сравниваешь, перебирать надо, что сработает.

Слышали что-то подобное от коллег или может быть у самих возникали подобные ситуации? Тогда вот вам пятничный пост с примерами про приведение типов, как это работает с оператором ==.

Буду краток, дальше будут только примерчики. А к тебе, дорогой читатель, просьба. Некоторые ответы спрятаны под спойлер. Перед тем, как заглянуть в ответ под спойлером, попробуй ответить сам. За каждый правильный ответ заслуженно прибавляй себе по баллу. В конце поста в опросе не забудь проставить свой результат. Договорились?
Тогда поехали
Всего голосов 49: ↑39 и ↓10+29
Комментарии81

Здоровье гика: кофеманим правильно

Время на прочтение5 мин
Количество просмотров65K
Привет, Geektimes. Мы тут что-то серьёзно увлеклись темой здоровья гиков и хотим опять поговорить об этом. На этот раз решено было коснуться хоть и довольно-таки заезженной, но окруженной кучей мифов и глупостей темы — кофе.


Действительно, о кофе не писал только ленивый. Буквально каждый ресурс, так или иначе касающийся темы работы и фриланса, тут отметился. Неудивительно — кофе уже даже не одно десятилетие является напитком №1 в офисах всего мира, да и дома люди предпочитают начать день с чашечки ароматного напитка, дабы побыстрее согнать с себя остатки сна и нормально осознать окружающую реальность. И несмотря на то, что, казалось бы, врачи и учёные только и делают, что изучают кофе и его влияние на организм человека, про него по-прежнему рассказывают кучу небылиц. Да что там — учёные по многим нюансам воздействия кофе сами не могут прийти к компромиссу, так как многие исследования прямо опровергают друг друга. И постоянно проводятся новые…

Итого, давайте-ка поговорим о кофе в контексте только действительно подтверждённых (или, по крайней мере, подтверждённых большинством исследователей) фактов — что от него бывает, что не бывает, как его правильно пить и пить ли вообще.
Читать дальше →
Всего голосов 50: ↑42 и ↓8+34
Комментарии147

Пародийная комедия Kung Fury, финансируемая через Kickstarter, появилась в свободном доступе

Время на прочтение2 мин
Количество просмотров33K
28 мая состоялась мировая премьера короткометражного фильма Kung Fury. Фильм был выпущен на бесплатной основе благодаря поддержке посетителей краудфандинговой платформы Kickstarter. Фильм снят шведским режиссёром Дэвидом Сандбергом, который также написал сценарий к фильму и сыграл в нём главную роль.



Хотя кино с краудфандинговым финансированием — само по себе явление необычное, этот фильм необычен вдвойне. По сути, это некий творческий «капустник», посвящённый романтике 80-х годов. Характерная аляповатая одежда, музыка в стиле синти-поп, полицейские боевики, фильмы о восточных единоборствах, первые персональные компьютеры и игры на автоматах (времён первого фильма Tron), элементы индийского кино, фэнтезийные боевики на тему викингов и даже динозавры — всё смешалось в этом весёлом хаосе.



Основные действующие лица — суперполицейский Кунг Фьюри, хакер Хакерман и Адольф Гитлер. Кунг Фьюри пытается при помощи Хакермана спасти мир от Гитлера. Особенной смысловой нагрузки сюжет не имеет, а в пересказе звучит, как сочинение человека, у которого закончились нужные таблетки. Там есть и главный герой, который получил суперспособности благодаря одновременному укусу кобры и удару молнии; Гитлер, присвоивший себе звание Кунг Фюрер и путешествующий во времени; викинги, отстреливающие динозавров из многоствольных пулемётов; хакер, взламывающий пространство и время, и много чего ещё.
Читать дальше →
Всего голосов 56: ↑54 и ↓2+52
Комментарии41

Лекции Технопарка. 2 семестр. Java

Время на прочтение4 мин
Количество просмотров73K


В эфире очередной выпуск материалов рубрики «Лекции Технопарка». На этот раз вы можете изучить лекции курса, посвящённого углублённому программированию на Java. Цель курса — получение студентами практических навыков создания клиент-серверного приложения на примере разработки сервера простой многопользовательской online-игры в малых группах (4-6 человек).
Читать дальше →
Всего голосов 39: ↑36 и ↓3+33
Комментарии6

Тестирование Ni-MH аккумуляторов типоразмера AA(HR6)

Время на прочтение13 мин
Количество просмотров105K
Нас окружает огромное количество всевозможных устройств и гаджетов, призванных облегчить и разнообразить нашу жизнь, начиная от детских электронных игрушек и заканчивая многообразными фотоаппаратами, фотовспышками, фонарями, рациями и т.д. Электропитание многих из них обеспечивается от Ni-MH элементов питания типоразмера АА. В продаже имеется великое разнообразие данных источников питания. Мое внимание привлекли аккумуляторы, как наиболее экономные и экологичные источники питания. В данном обзоре собраны результаты тестирования десяти различных комплектов аккумуляторов.



Читать дальше →
Всего голосов 84: ↑84 и ↓0+84
Комментарии58

Разработка мультитач веб-приложений

Время на прочтение6 мин
Количество просмотров59K
Мобильные устройства такие как сматрфоны или планшеты обычно имеют емкостный экран, чувствительный к прикосновениям для расширенного взаимодействия с пользователем.

С каждым днем мобильные приложения становятся все сложнее и сложнее. Веб-разработчикам тоже нужен API для использования всех возможностей тачскрина. Например, какой-нибудь аркаде или файтингу нужна необходимость нажатья нескольких кнопок, эту возможность может предоставить экран с поддержкой мультитач.

Apple ввел свое touch events API в iOS 2.0, вскоре устройства на Android тоже получили такую возможность и touch events API стал стандартом де-факто. Недавно была собрана рабочая группа W3C для работы над touch events specification.
В этой статье я рассмотрю touch events API, которое нам предоставляют устройства на iOS и Android, мы изучим какие приложения можно создавать, используя touch events API. В статье куча полезных примеров и техник, которые позволяют упростить написание приложений с touch events API.
Читать дальше →
Всего голосов 51: ↑47 и ↓4+43
Комментарии14

Sublime Text 3 — пользовательская подсветка синтаксиса

Время на прочтение4 мин
Количество просмотров71K
Расширяемость Sublime Text не знает границ. Для тех, кому мало стандартных функций, на Хабре уже рассказывали о том, как создать сниппет, как написать простой плагин, как написать сложный плагин и еще много много чего. Про ручную настройку подсветки синтаксиса толком ничего не смог найти: для кого-то слишком очевидно, кому-то просто не нужна, а кому-то и наверняка же пригодится.

Итак, задача: имея какие-нибудь абстрактные логи доступа в wonder-net:

!->14/02 16:44:22 [134.249.51.251:39951>80] (t1 19) >HTTP  in:504 out:34  Time:156
GET /516874233**21893/ HTTP/1.1 SCOD=00
!->14/02 16:44:24 [134.249.51.251:49507>80] (t1 20) 
GET /44058858**409377/ HTTP/1.1 SCOD=00
!->14/02 16:54:11 [195.18.13.107:1721>80] (t2 22) 
GET /41494377**562173/ HTTP/1.1 SCOD=00
!->14/02 16:54:11 [195.18.13.107:1721>80] (t2 23) >HTTP  in:385 out:10138  Time:156
GET /5211537**1172048/ HTTP/1.1 SCOD=00
!->14/02 16:54:24 [195.18.13.107:1727>80] (t1 30) >HTTP  in:423 out:1220  Time:187
GET /5211537**6447554/ HTTP/1.1 SCOD=23
!->14/02 18:07:24 [82.145.208.159:43634>80] (t2 52) 
GET /4149437**8265377/ HTTP/1.1 SCOD=00
!->14/02 18:09:41 [82.145.208.174:41708>80] (t2 61) 
GET /4149497**5750155 / HTTP/1.1 SCOD=00
!->14/02 18:51:39 [82.145.210.33:55210>80] (t1 66) >HTTP  in:543 out:34  Time:0
GET /5168757**9478487/ HTTP/1.1 SCOD=00
!->14/02 18:51:40 [82.145.210.33:55332>80] (t1 68) >HTTP  in:544 out:1243  Time:141
GET /4149497**0456701 / HTTP/1.1 SCOD=00
!->14/02 18:51:46 [82.145.210.33:57345>80] (t1 73) >HTTP  in:544 out:1243  Time:125
GET /5168742**0521893/ HTTP/1.1 SCOD=00

выделить:
Дату-время — фиолетовым курсивом;
Номер карты — желтым курсивом, если не в черном списке или красным, если иначе;
ip-адрес — темно-зеленым, если не в черном списке или красным, если иначе;
scod=хх — темно-зеленым если 00 или красным, если иначе.
Приступим
Всего голосов 41: ↑38 и ↓3+35
Комментарии20

PHPExcel и большие файлы

Время на прочтение4 мин
Количество просмотров100K
PHPExcel — отличная библиотека с огромным функционалом по работе с форматами xls, xlsx. Можно считывать, записывать, менять форматирование, задавать формулы, а из xlsx можно и картинки вытаскивать.

На хабре уже был пост про эту библиотеку - Универсальное чтение ячеек в PHPExcel. Я остановлюсь только лишь на главном минусе PHPExcel — вечно памяти не хватает, все время сыпятся ошибки «Fatal error: Out of memory». Этот пост о том, как это обойти.

Читать дальше →
Всего голосов 33: ↑25 и ↓8+17
Комментарии23

Обработка и оформление отчетов в Excel на PHP

Время на прочтение16 мин
Количество просмотров255K

Не редко при разработке некоего проекта, возникает необходимость в формировании отчетной статистики. Если проект разрабатывается на Delphi, C# или к примеру, на С++ и под Windows, то тут проблем нет. Всего лишь необходимо воспользоваться COM объектом. Но дела обстоят иначе, если необходимо сформировать отчет в формате excel на PHP. И чтобы это творение функционировало на UNIX-подобных системах. Но, к счастью, не так все плохо. И библиотек для этого хватает. Я свой выбор остановил на PHPExcel. Я уже пару лет работаю с этой библиотекой, и остаюсь доволен. Поскольку она является кроссплатформенной, то не возникает проблем с переносимостью.


PHPExcel позволяет производить импорт и экспорт данных в excel. Применять различные стили оформления к отчетам. В общем, все на высоте. Даже есть возможность работы с формулами. Только необходимо учитывать, что вся работа (чтение и запись) должна вестись в кодировке utf-8.

Читать дальше →
Всего голосов 40: ↑33 и ↓7+26
Комментарии28

Адаптивный и мобильный дизайн с CSS3 Media Queries

Время на прочтение7 мин
Количество просмотров592K
Разрешение экрана в наши дни колеблется от 320px (iPhone) до 2560px (большие мониторы) или даже выше. Пользователи больше не просматривают сайты только на настольных компьютерах. Теперь пользователи используют мобильные телефоны, небольшие ноутбуки, планшетные устройства, такие как iPad или Playbook для доступа в интернет. Поэтому, традиционный дизайн с фиксированной шириной больше не работает. Дизайн должен быть адаптивным. Структура должна автоматически изменяться с учетом всех разрешений дисплеев. Эта статья покажет вам как создавать кросс-браузерный адаптивный дизайн при помощи HTML5 и CSS3 media queries.
Читать дальше →
Всего голосов 91: ↑90 и ↓1+89
Комментарии32

Использование Media Queries в Sass 3.2

Время на прочтение4 мин
Количество просмотров64K
С выходом Sass 3.2 начал продвигаться в массы путь объектно-ориентированного CSS (OOCSS), принося с собой принцип DRY и программистское мышление. Media queries и OOCSS стали жизненно важны для современной фронтенд разработки.


Читать дальше →
Всего голосов 32: ↑31 и ↓1+30
Комментарии5

Несколько полезных шорткатов для Sublime Text ниндзи

Время на прочтение2 мин
Количество просмотров217K
Доброго времени суток, уважаемые хабравчане. Многие пользуются замечательным редактором Sublime Text, который стал популярен благодаря своей простоте, гибкости/кастомизации и огромному количеству плагинов. Хочу поделиться с вами, на мой взгляд, самыми полезными шорткатами при работе с Sublime.

image

Переход по фрагментам

Win/Linux: CTRL+R
Mac: CMD+R
Вероятно, самое полезное сочетание клавиш для экономии вашего времени. Содержимое документа разбивается на определенные фрагменты (функции, HTML теги или CSS стили). Переход происходит при выборе соответствующего фрагмента во всплывающем окне.

Читать дальше →
Всего голосов 85: ↑60 и ↓25+35
Комментарии52

Создание простой MVC-системы на PHP 5

Время на прочтение18 мин
Количество просмотров208K

Предисловие


В этом руководстве Вы узнаете, как построить простую систему по архитектуре MVC (Model-View-Controller, Модель-Отображение-Контроллер) на PHP 5.1 с использованием возможностей библиотеки SPL (Standard PHP Library, Стандартная Библиотека PHP).

Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии116

Создание дизайна Landing Page

Время на прочтение11 мин
Количество просмотров242K


Landing Page – (далее по тексту Целевая страница) – одностраничный сайт, построенный таким образом, чтобы обеспечить сбор контактов максимального количества целевых посетителей и максимальную конверсию в контексте его использования.

При разработке целевых страниц можно столкнуться с двумя главными проблемами, которые могут привести разработчика в ступор или серьезно повлиять на конечный результат не в лучшую сторону. Первая проблема – тупой «продающий» контент. Вторая проблема – отстойное оформление. Крайне редко встречаются целевые страницы, которые имеют хорошее содержание и выглядят достойно. Чаще всего целевые страницы представляют собой унылый шлак.

Так научимся же создавать качественные и красивые целевые страницы. Разобьём урок на 3 части. Содержание, Оформление и Практика.
Читать дальше →
Всего голосов 50: ↑32 и ↓18+14
Комментарии47

Готовим Sublime Text 2 для front-end

Время на прочтение7 мин
Количество просмотров268K
Ни для одного опытного программиста или верстальщика не секрет, что настроенная под себя среда разработки (не в смысле IDE, а в более общем) — жизненная необходимость. Было время, когда я делал очередную верстку в практически голом Notepad++ на единственном мониторе, поочередно открывая Photoshop, браузер и редактор. Сегодня, в эпоху «автоматизации всего», мне сложно представить, как вообще можно было так работать.

Sublime Text 2 — популярный расширяемый кроссплатформенный текстовый редактор, для которого написано множество плагинов если и не на все случаи жизни, то на многие. В этом посте я попытаюсь рассказать как из этого конструктора сложить удобный инструмент front-end разработчика для работы с HTML, CSS и JavaScript.
Читать дальше →
Всего голосов 107: ↑95 и ↓12+83
Комментарии134

Создаём шрифт, имитирующий ваш рукописный почерк

Время на прочтение3 мин
Количество просмотров1.1M
Учащимся старших классов и студентам ВУЗов, зачастую, делая домашнюю работу, приходится выполнять большое количество письменных упражнений. Например, наш преподаватель по обществознанию каждый урок задает нам ДЗ, заключающееся в том, чтобы мы нашли материал в библиотеке или Интернете, и написали его от руки (только за это можно получить оценку «отлично»), даже если найденный материал будет верным, но распечатанный на компьютере, выше четвёрки не жди…

Исходя из всего вышесказанного, я пришёл к выводу: нужно сделать шрифт для компьютера, дублирующий мой почерк. На мой взгляд, сделал я его успешно. Родная мать не отличит, где я писал от руки, а где напечатал компьютер. Многим моим знакомым понравилась эта затея, и они стали расспрашивать меня, как я это всё сделал. И чтобы каждому по сто раз не объяснять, я решил написать эту статью – план выполнения работы с подробными комментариями.

Итак, в этой статье я расскажу вам, как сделать шрифт, имитирующий ваш почерк.
Читать дальше →
Всего голосов 152: ↑129 и ↓23+106
Комментарии142

Конспекты для ленивых

Время на прочтение2 мин
Количество просмотров239K
Все началось с того, что возникла необходимость переписать огромное колличество конспектов за довольно небольшой срок. Время поджимает, лени не уменьшается, а делать надо. Благо конспекты были в электронном варианте, решилась я на хитрость — создать свой рукописный шрифт и распечатать конспекты.
Читать дальше →
Всего голосов 151: ↑130 и ↓21+109
Комментарии134

Решение задачи о двух мудрецах и числах от 1 до 100

Время на прочтение4 мин
Количество просмотров76K

Недавно на Хабре промелькнула интересная задачка про двух мудрецов. Здесь я хочу предложить свой вариант решения и рассказать, как к этому решению можно прийти. Напомню условие:
У некоторого султана было два мудреца: Али-ибн-Вали и Вали-ибн-Али. Желая убедиться в их мудрости, султан призвал мудрецов к себе и сказал: «Я задумал два числа. Оба они целые, каждое больше единицы, но меньше ста. Я перемножил эти числа и результат сообщу Али и при этом Вали я скажу сумму этих чисел. Если вы и вправду так мудры, как о вас говорят, то сможете узнать исходные числа».
Султан сказал Али произведение, а Вали – сумму. Мудрецы задумались. Первым нарушил молчание Али.
— Я не знаю этих чисел, — сказал он, опуская голову.
— Я это знал, — подал голос Вали.
— Тогда я знаю эти числа, — обрадовался Али.
— Тогда и я знаю! — воскликнул Вали.
И мудрецы сообщили пораженному султану задуманные им числа.
Назовите эти числа.
Читать дальше →
Всего голосов 63: ↑57 и ↓6+51
Комментарии56

Яблочный forensic. Извлекаем данные из iOS-устройств при помощи open source инструментов

Время на прочтение11 мин
Количество просмотров44K
По состоянию на июль прошлого года Apple продала более 800 миллионов устройств, работающих под управлением iOS. Более половины из них — различные модели iPhone. При таком количестве устройств в обращении совершенно не удивительно, что они часто становятся объектами компьютерно-технической экспертизы (forensics). На рынке представлены различные решения для автоматизации подобных экспертиз, но ценник на них зачастую делает их недоступными. Поэтому сегодня мы поговорим о том, как можно провести такую экспертизу с минимальными затратами или, проще говоря, используя бесплатные и/или open source инструменты.

Немного теории


При проведении экспертизы в большинстве случаев подразумевается физический доступ к устройству, и перед экспертом стоят две задачи: извлечь как можно больше данных и информации из устройства и оставить при этом как можно меньше следов (артефактов). Вторая задача особенно важна, если результаты экспертизы представляются в суде: слишком большое количество артефактов может помешать проведению повторной экспертизы, что, в свою очередь, может поставить результаты первоначальной экспертизы под сомнение. Во многих случаях избежать появления артефактов невозможно; эту проблему пытаются решать, подробно документируя артефакты, создаваемые на различных этапах проведения исследования.
Читать дальше →
Всего голосов 25: ↑25 и ↓0+25
Комментарии0

10 заповедей программирования без эго

Время на прочтение3 мин
Количество просмотров57K
image«Программирование без эго» — перевод понятия egoless programming. Смысл в том, что разработчик осознанно отодвигает эго на второй план ради эффективности в работе. При разработке Web-payment.ru — сайта о платежных системах с каталогами и мониторингом обменников — мы стараемся руководствоваться этими принципами. Если кто-то благодаря этому посту тоже начнет применять их в своем проекте, мы будем очень рады, ведь они помогают избежать конфликтов и несут в себе добро. Перевод и редактура moigagoo.

О программировании Стивен начал говорить с отцом за 2 недели до его смерти. Стивену было 22, он изучал графдизайн в колледже и почти получил степень бакалавра. Его отцу было 62 — больше, чем большинству отцов. Когда он только начинал программировать в Теннессийском техническом университете в 60-е, то писал код на Фортране на перфокартах. Знал он очень много.

Как раз в том семестре Стивен впервые столкнулся с программированием, и оно уже увлекало его. Стивену оно казалось волшебным и могущественным занятием, во многих смыслах более творческим, чем визуальный дизайн.

Когда Стивен приехал домой на каникулы, отец рассказал ему про 10 заповедей программирования без эго. Он распечатал их, и вдвоем со Стивеном они обсудили каждый пункт. Из-за внезапной смерти отца Заповеди стали одной из немногих программистских тем, которые Стивен успел обсудить вместе с ним. Возможно, именно поэтому они ему так запомнились.
Читать дальше →
Всего голосов 72: ↑58 и ↓14+44
Комментарии37

Информация

В рейтинге
Не участвует
Дата рождения
Зарегистрирован
Активность