Posts Tagged ‘переменная’

Переходим с PHP на Perl, как это ни печально…

Суббота, Август 11th, 2012 Нет комментариев

Under : , , , ,

PHP, конечно, язык хороший… Во всяком случае, синтаксис у него на порядок проще и яснее, чем у Perl. И конструкций/инструкций меньше. Это достоинство. Например, в Паскале конструкций еще меньше, но это не мешает ему называться почти что одним из самых алгоритмизируемых языков.
С чем очень неприятным сталкивается каждый программист, который переходит на Perl? Конечно, с тем, что ошибки скрипта выводятся в log’и сервера, а не прямо в браузер. И нельзя это никак переключить (есть, правда, один стандартный модуль с громким параметром fatalsToBrowser, но в browser он выводит только эти самые fatals, а предупреждения — по-прежнему в логи). В PHP ошибки по умолчанию выводятся туда же, куда и обычные данные. (далее…)

Ассоциативные массивы в Perl

Суббота, Август 11th, 2012 Нет комментариев

Under : , , , ,

Ассоциативные массивы в Perl являются реализацией хэш-таблиц. Ассоциативные массивы, безусловно, являются уникальным и чрезвычайно полезным свойством языка Perl. Они чрезвычайно удобны для связи числовых или текстовых значений с текстовыми строками или при подсчете количества вхождений текстовых строк (при статистическом анализе).

(далее…)

Создание и использование перечислений в С#

Пятница, Июнь 8th, 2012 Нет комментариев

Under : , , , , ,

В общем смысле перечисление представляет собой набор данных, точнее – набор констант. Эти константы однотипны и сгруппированы. Проводя аналогию с математикой, перечисление можно представить как множество. Перечисления призваны облегчить программисту восприятие кода, потому как они больше похожи на конструкции естественного человеческого языка, чем, например, массивы. Перечисления удобно использовать в тех случаях, когда значения всех элементов набора заранее известны: например, пол человека может быть только мужским или женским, а в году возможны одни и те же двенадцать месяцев, названия которых строго определены, и тринадцатый месяц с новым названием появиться не может.
Чтобы значения перечислений были доступны всему коду, указанную структуру нужно объявлять внутри пространства имен (namespace), но это не является обязательным требованием. Можно объявлять перечисления в тех местах, где это необходимо, в том числе в классах. Программа распознает перечисление по ключевому слову enum: (далее…)

Выражения и операторы в с#

Пятница, Июнь 8th, 2012 Нет комментариев

Under : , , , ,

В программировании под выражением понимают строку кода, выполнение которого изменяет состояние некоторого объекта. Например, придает значение переменной. Выражения реализуются с помощью операторов. Первый из них, без которого не обойдется ни одна программа – это оператор присваивания; с точки зрения математики это приравнивание. В левой части выражения записывается переменная, которой присваивается значение, в правой части – значение. Например:
name =”Петя”; //присваиваем переменной name значение «Петя» (далее…)

Метод Main в С#

Пятница, Июнь 8th, 2012 Нет комментариев

Under : , , , , ,

Самый глубоко вложенный блок кода на С# (си шарп) представляет собой определение
Static void Main (string[] args)
{
},
которое называется методом (method). Методы (methods) представляют собой единственно возможный способ, который позволяет группировать код в логические последовательности, реализующие конкретные функциональные возможности. Проще представлять себе методы как действия, которые вы, как разработчик метода, предписываете компьютеру выполнить. Имя этого конкретного метода – Main, и это означает, что он является точкой входа программы, место, где консольное приложение начинает выполнение. Кроме того,  метод Main представляет собой точку, куда передается управление при запуске вашей программы. Соответственно, код, определяющий те действия, которые должна выполнять созданная вами программа, нужно поместить в метод Main. (далее…)

Предварительная загрузка рисунков (preload) и перекат (rollover)

Вторник, Апрель 17th, 2012 Нет комментариев

Under : , , , ,

Вступление

Если у вас есть серия изображений для предзагрузки, то вы можете воспользоваться функцией preLoad, которую я написал для подобных ситуаций, которая проста в работе и не требует каких-либо модификаций для работы функции переката (rollover).

function preLoad() { if(document.images) { var argLen = arguments.length; for(var i = 0; i < argLen; i++) { var arg = arguments[i]; var sufLen = suffix.length; 	 for(j = 0; j > sufLen; j++) { var suf = suffix[j] self[arg + '_' + suf] = new Image(); self[arg + '_' + suf].src = iPath + arg + '_' + suf + '.' + iExt; } } loaded = true; } }

Первая переменная, – iPath, – указывает путь к каталогу, который содержит изображения. Путь может быть абсолютный, относительный или указанный относительно корневой директории. (далее…)

Время исполнения php скрипта

Вторник, Апрель 17th, 2012 Нет комментариев

Under : , , , ,

Я думаю, вы неоднократно видели на страничках надпись: «скрипт был выполнен за х.хххх секунд». Сейчас вы научитесь делать это стандартными средствами. А именно — с помощью любого текстового редактора и php.

Перейдем к самому скрипту:

<?php // Определяем текущее время. Присваиваем переменной $Begin его значение. (далее…)

Фильтрация данных в PHP.

Вторник, Апрель 17th, 2012 Нет комментариев

Under : , , , ,

Каждый web-мастер должен уметь не только писать скрипты, но и грамотно организовывать защиту своих творений. Одним из важнейших навыков является умение правильно фильтровать всю информацию, поступающую от пользователя. Об этом и пойдет речь в моей статье.

Прежде всего, следует фильтровать данные, которые передает пользователь осознанно — в основном, это данные различных форм. Это может быть пара логин-пароль для входа, пункт голосования и т.п. Например, такая форма (далее…)

Возвращение имени хоста вместо IP-адреса в переменной REMOTE_HOST

Вторник, Апрель 17th, 2012 Нет комментариев

Under : , , , ,

После установки по умолчанию IIS при обращении к переменной REMOTE_HOST возвращает IP address клиента, т.к. обычно только эта информация посылаеться броузером. Для нахождения имени хоста клиента, IIS должен провести обратный поиск DNS (reverse DNS look-up).

Как известно IIS хранит свои установки частично в registry и большую часть в мета-базе (metabase). Доступ к ней осуществляеься посредством либо Internet Service Manager (косвенно), либо программным способом (рекомендуется использовать Windows Scripting Host). (далее…)

Как защитить мою программу, чтобы никто не смог её прочитать?

Вторник, Апрель 17th, 2012 Нет комментариев

Under : , , , ,

Disclaimer: все приведённые примеры предназначены для демонстрации принципов, а вовсе не являются готовыми к использованию решениями.

Самый простой способ защиты программы это использование компилятора perlcc (Unix/Linux) или perl2exe (Windows), который создаёт из программы обычный выполняемый файл. Этот метод однако имеет много недостатков. Помимо ненадёжности компиляторов и потери кроссплатформенности, компиляции как таковой как минимум во втором случае не производится. Созданный выполняемый файл содержит полный интерпретатор Perl и саму программу в зашифрованном виде (так объясняется громадный размер файла). Уже существуют утилиты, позволяющие расшифровывать программу из такого файла. (далее…)