Автор работы: Пользователь скрыл имя, 15 Июня 2013 в 18:04, отчет по практике
Компания ООО «Ромашка» действует на рынке с 2003 года и добилась определенных успехов в сфере своей деятельности. ООО «Ромашка» предоставляет услуги системного администрирования для юридических лиц и услуги ремонта компьютеров для физических лиц г. Москва. Так же направлениями деятельности фирмы являются: создание и разработка сайтов, массовые электронные рассылки.
Главная цель фирмы ООО «Ромашка» получение максимальной прибыли и расширение рынка сбыта готовой продукции, путем выпуска продукции соответствующей стандартам РБ, наличие сертификата качества на каждую единицу продукции. Фирма гарантирует совместимость и надежную работу каждого готового персонального компьютера. Фирма ведет своевременное обучение персонала, обеспечение понимания политики в области качества на всех уровнях.
1. Общая характеристика предприятия
1.1 История и цели создания
1.2.Правовой статус
1.3. Услуги фирмы
2. Логотип предприятия
3. Характер занимаемой должности
4. Теоретические и практические основы занимаемой должности
4.1 История PHP
4.2 Режимы интерпретатора
5. Трудности в профессии программиста
6. Теоретический вопрос по курсу
Заключение
Пятая версия PHP была выпущена разработчиками 13 июля 2004 года. Изменения включают обновление ядра Zend (Zend Engine 2), что существенно увеличило эффективность интерпретатора. Введена поддержка языка разметки XML. Полностью переработаны функции ООП, которые стали во многом схожи с моделью, используемой в Java. В частности, введён деструктор, открытые, закрытые и защищённые члены и методы, окончательные члены и методы, интерфейсы и клонирование объектов. В последующих версиях также были введены пространства имён и замыкания.
Шестая версия PHP находится
в стадии разработки с октября 2006 года. В ней уже сделано множество нововведений, как, например,
исключение из ядра регулярных выражений POSIX и «длинных» суперглобальных массивов,
удаление директив safe_mode, magic_
Синтаксис PHP подобен синтаксису языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл foreach, заимствованы из Perl.
Для работы программы не требуется описывать какие-либо переменные, используемые модули и т. п. Любая программа может начинаться непосредственно с оператора PHP.
Простейшая программа Hello world на PHP выглядит следующим образом:
<?php
echo 'Hello, world!';
?>
PHP исполняет код, находящийся
внутри ограничителей, таких
<html>
<head>
<title>Тестируем PHP</title>
</head>
<body>
<?php echo 'Hello, world!'; ?>
</body>
</html>
Помимо ограничителей <?php ?>, допускается использование дополнительных
вариантов, таких как <? ?> и <script language="php"> </script>. Кроме того, до версии 6.0 допускается
использование ограничителей языка программирования ASP <% %> (конструкции <? ?> и
Имена переменных начинаются с символа $, тип переменной объявлять не нужно. В отличие от имён функций и классов, имена переменных чувствительны к регистру. Именованные константы могут быть объявлены как регистрозависимыми, так и регистронезависимыми. Переменные обрабатываются в строках, заключённых в апострофы или двойные кавычки, и heredoc-строках (строках, созданных при помощи оператора <<<).
PHP рассматривает переход на новую строку как пробел, так же как HTML и другие языки со свободным форматом. Инструкции разделяются с помощью точки с запятой (;), за исключением некоторых случаев.
PHP поддерживает три
типа комментариев: в стиле языка Си (
PHP является языком
программирования с динамическо
К скалярным типам данных относятся:
целый тип (integer),
вещественный тип данных (
логический тип (boolean),
строковый тип (string)
и специальный тип NULL.
К нескалярным типам относятся:
«ресурс» (resource),
массив (array)
и объект (object).
Диапазон целых чисел
(integer) в PHP зависит от платформы (обычно это диапазон 32-битных знаковых
целых чисел, то есть от −2 147 483 648 до 2 147
483 647). Числа можно задавать в десятичной, восьмеричной и шес
PHP предоставляет разработчикам ло
Специальный тип NULL предназначен для переменных без определённого значения. Единственным значением данного типа является константа NULL. Тип NULL принимают неинициализированные переменные, переменные инициализированные константой NULL, а также переменные, удалённые при помощи конструкции unset().
Ссылки на внешние ресурсы имеют тип «ресурс» (resource). Переменные данного типа, как правило, представляют собой дескриптор, позволяющий управлять внешними объектами, такими как файлы, динамические изображения, результирующие таблицы базы данных и т. п.
Массивы (array) поддерживают числовые и строковые ключи и являются гетерогенными. Массивы могут содержать значения любых типов, включая другие массивы. Порядок элементов и их ключей сохраняется.
Обращение к переменным осуществляется с помощью символа $, за которым следует имя переменной. Данная конструкция может быть применена также для создания динамических переменных и функций.Например:
$a = 'I am a'; // Запись значение в переменную $a
echo $a; // Вывод переменной $а
$b = 'a';
echo $$b; // Вывод переменной $а (дополнительный $ перед переменной $b)
function_name(); // Вызов функции function_name
$c = 'function_name';
$c(); // Вызов функции function_name,
$d = 'Class_name';
$ob = new Class_name; // Создание объекта класса Class_name
$obj = new $d(); // Создание объекта класса Class_name
$obj->b; // Обращение к полю b объекта
$obj->c(); // Вызов метода c() объекта
$obj->$b; // Обращение к полю a объекта, так как $b = 'a'
$obj->$c(); // Вызов метода function_name() объекта, так как $c = 'function_name'
В PHP echo и print не являются функциями (хотя print имеет возвращаемое значение), а являются синтаксическими единицами. При их использовании можно опустить скобки.
Суперглобальные массивы
Суперглобальными массивами (англ. Superglobal arrays) в PHP называются предопределённые массивы, имеющие глобальную область видимости без использования директивыglobal. Большая часть этих массивов содержит входные данные запроса пользователя (параметры GET-запроса, поля форм при посылке методом POST, куки и т. п.).
Все суперглобальные
массивы кроме $GLOBALS и $_
$GLOBALS
Массив всех глобальных
переменных (в том числе и пользовательски
$_SERVER (устаревший аналог — $HTTP_SERVER_VARS)
Содержит переменные окружения, которые операционная система передаёт серверу.
$_ENV (уст. $HTTP_ENV_VARS)
Текущие переменные среды (англ. Environment variables). Их набор специфичен для платформы, на которой выполняется скрипт.
$_GET (уст. $HTTP_GET_VARS)
Содержит параметры GET-запроса, переданные в URI после знака вопроса «?».
$_POST (уст. $HTTP_POST_VARS)
Ассоциативный массив значений полей HTML-формы при отправки методом POST. Индексы элементов соответствуют значению атрибута name элементов управления HTML-формы.
$_FILES (уст. $HTTP_POST_FILES
Ассоциативный массив со сведениями об отправленных методом POST файлах. Каждый элемент имеет индекс, идентичный значению атрибута «name» в форме, и, в свою очередь, также является массивом со следующими элементами:
['name'] — исходное имя файла на компьютере пользователя.
['type'] — указанный агентом пользователя MIME-тип файла. PHP не проверяет его, и поэтому нет никаких гарантий, что указанный тип соответствует действительности.
['size'] — размер файла в байтах.
['tmp_name'] — полный путь к файлу во временной папке. Файл необходимо переместить оттуда функцией move_uploaded_file. Загруженные файлы из временной папки PHP удаляет самостоятельно.
['error'] — код ошибки. Если файл удачно загрузился, то этот элемент будет равен 0 (UPLOAD_ERR_OK).
$_COOKIE (уст. $HTTP_COOKIE_
Ассоциативный массив с переданными агентом пользователя значениями куки.
$_REQUEST
Содержит элементы из массивов $_GET, $_POST, $_
$_SESSION (уст. $HTTP_SESSION_
Содержит данные сессии.
Объектно-ориентированное программирование
PHP поддерживает широкие объектно-
Класс в PHP объявляется с помощью ключевого
слова class. Методы и поля класса могут быть общедоступными
(public, по умолчанию), защищёнными (protected) и скрытыми (private). PHP поддерживает все три основных механизма
ООП —инкапсуляцию, полиморфизм и наследование (родительский класс указывается с помощью
ключевого словаextends после имени класса). Поддерживаются интерфейсы (
Классы в PHP имеют ряд
специальных методов (англ. Magic methods), начинающихся с двух символов подчёркивания.
Особо стоит отметить конструктор (__
Экземпляры класса создаются с помощью ключевого слова new, обращение к полям и методам объекта производится с использованием оператора ->. Для доступа к членам класса из его методов используется переменная $this.
class C1 extends C2 implements I1, I2
{
private $a;
protected $b;
function __construct($a, $b)
{
parent::__construct($a, $b);
$this->a = $a;
$this->b = $b;
}
public function plus()
{
return $a + $b;
}
/* ............... */
}
$d = new C1(1, 2);
echo $d->plus();
Начиная с пятой версии PHP, объекты передаются по ссылке:
class a
{
public $color = 'red';
}
$a = new a();
echo $a -> color; // red
$b = $a;
$b -> color = 'blue';
echo $a -> color; // blue
«Paamayim Nekudotayim» или просто «двойное двоеточие». Используя эту лексему, программист может обращаться к константам, статическим или перегруженным свойствам или методам класса. При обращении к этим элементам извне класса, программист должен использовать имя этого класса. «Paamayim Nekudotayim» на первый взгляд может показаться странным словосочетанием для обозначения двойного двоеточия. Однако, во время создания Zend Engine версии 0.5 (который входил в PHP3), Andi и Zeev выбрали именно это обозначение. «Paamayim Nekudotayim» действительно значит «двойное двоеточие». Намиврите. Просто это обозначение не менялось ни разу в течение всего времени разработки PHP.
<?php
class MyClass {
const CONST_VALUE = 'Значение константы';
}
// Использование :: вне объявления класса
echo MyClass::CONST_VALUE;
?>
Особенности интерпретатора
PHP-скрипты обычно
- Лексический анализ исходного кода и генерация лексем
- Синтаксический анализ полученных лексем
- Генерация байт-кода
Выполнение байт-кода интерпретатором (без создания исполняемого файла)
Для увеличения быстродействия приложений возможно использование специального программного обеспечения, т.н. акселераторов. Принцип их работы заключается в кэшировании однажды сгенерированного байт-кода в памяти и/или на диске, таким образом из процесса работы приложения исключаются этапы 1—3, что в общем случае ведёт к значительному ускорению работы. Наибольшая эффективность акселератора достигается на скриптах с большим количеством исходного кода, содержащих небольшое количество операций, ресурсоёмких при выполнении даже считанного количества раз (например таких, как масштабирование изображений).
Информация о работе Отчет о производственной практике в ООО Ромашка