О php, введение

PHPКомментариев нет

Коротко о развитии языка

В 1994 году Rasmus Lerdorf  создает на perl набор инструментов для CGI, по названием php-tools.  Cо временем переписывает на C, добавляю поддержку баз данных.

В 1995 году открывает исходный код общественности. Основной возможность языка была обработка форм, и первое название было FI(интерпретатор форм).

В 1996 php/fi — можно сказать становится языком программирования(а не только решающий определенные задачи).

В 1997 язык был протестирован, и полностью переписан. В команду разработчиков над языком добавились Andi Gutmans и Zeev Suraski.

В 1998 вышла версия php 3.0 и 10% сайтов в мире, в конце года работали на php. В тоже время php/fi — перестал поддерживаться.

В 1999 появилось новое ядро Zend Engine разработали которое Andi Gutmans и Zeev Suraski.

В 2000 вышел php 4.0 В этом же году был создан PEAR — репозиторий библиотек для php с открытым исходным кодом.

В 2003 был создан PECL — репозиторий для модулей ядра php.

в 2004 выходит 5.0. Переработана OOP, основа взята у java. Добавлены модификаторы доступа к функциям.

В 2005 появляется php 6(в разработке) Внедрение utf-16 поддержка unicod

В 2006 выходит версия 5.2

2008 Пишутся активно книги по php в том числе и по php 6, работа над которым в то время еще велась

2010 выходит 5.3 Добавилось пространство имен, константы, статические методы, магические методы. PHP 6 прекратил свое существование, признавшись что переписать ядро с поддержкой Юникода — «не возможно».

В 2012 выходит 5.4 Добавлен синтаксис для массива [], добавлены примеси(трейды), доступ к объекты при его создании, встроенный веб сервер.

В 2013 выходит 5.5. Добавлено: генераторы, list(), finaly,api для хеширования паролей.

В 2014 году выходит 5.6 Добавлено: константа может хранить массив, splat оператор(когда не известно сколько оператор в функции), распаковка массива(передаваемого функции как аргументы), оператор возведения в степень **, импорт функции и констант в пространство имен.

В 2015 выходит php 7.0 Добавлено use для группировки импорта, оператор космический корабль, добавлена типизация в функциях, возможность указывать возвращаемый тип данных, анонимные классы, исключения уровня движка(вместо фатальных ошибок)

В 2016 выходит php 7.1 Стало возможным передавать и возвращать null, возвращать тип void, добавлен псевдо тип iterable, модификаторы доступа для const в классах.

Общие знания

Транслятор — программа переводчик, котора переводит программу написанную на высокоуровневом языке, в программу написанную на низкоуровневом языке.

Транспайлеры — программа переводчик из одного языка в другой. Языки одного уровня.

Кимпилятор — частный случай транслятора, когда высокоуровневый язык транслируется в машинный код.

Интерпретатор — выполняет последовательно код, созданный транслятором(интерпретатор как вид транслятора).

JIT-компиляция — работает, не до выполнения кода, а прямо перед и во время выполнения программы, отличительная особенность отдавать на выполнение код напрямую процессору а не перерабатывать его перед отдачей процессору.

Если взять php то это интерпретируемый язык программирования.

Виды типизации

Динамическая — php относится к этому виду(динамическая слабая типизация, можно сложить переменные разных типов). Тип переменной определяется на лету.

Статическая — тип переменных определяется заранее.

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

garbage collector — очистка мусора, из оперативной памяти. Например если нет ссылок на переменные, то значение удаляется из памяти.

 

 


Комментарии закрыты!