История символа @
- Подробности
- Категория: Электронная почта
Знак @ — лигатура, означающая «at». Официальное название символа — «коммерческое at». Его знает любой пользователь сети Интернет, так как он непосредственно связан с электронной почтой. Но далеко не все знают историю появления этого символа и почему в русском языке он называется «собака», «собачка».
Откуда символ появился, точно неизвестно. Он существует по меньшей мере с XV века, а возможно и ранее. Многие ученые проводили исследования появления этого знака. Француз Дэнис Музерелли предположил, что @ появился в результате другого «уклона» в написании, когда значок «`», использовавшийся французскими и немецкими купцами, начали второпях писать как @.
Американский ученый Бертольд Уллман выдвинул предположение, что знак @ был изобретен средневековыми монахами для сокращения латинского слова «ad», которое часто употреблялось в качестве универсального слова, означающего «на», «в», «в отношении» и т.
Итальянский специалист истории языка профессор Джорджио Стабиле (Giorgio Stabile) обнаружил венецианские коммерческие документы, датированные примерно 1500 годом, в которых символ @ использовался для обозначения другой меры объема — амфоры, или сосуда. Стабиле также нашел латино-испанский словарь 1492 года, в котором слово «амфора» (anfora) переводилось как «арроба» (arroba) — мера веса, равная примерно 12,5 кг. Это слово, скорее всего, произошло от арабского ar-roub, которое, опять же, означало некую единицу измерения, а именно «четверть».
Современное официальное название символа «коммерческое at» берёт своё происхождение из торговых расчетов, например, 7 widgets @ $2 each = $14, что переводится как 7 шт. по 2$ = 14$. Поскольку этот символ применялся в торговле, он был размещен на клавиатурах первых пишущих машинок и оттуда перешел на клавиатуру компьютера.
Можно сделать вывод, что символ @ существует с XV века — как в испано-арабских, так и в греко-романских языках — в качестве коммерческого символа, использовавшегося для обозначения единиц измерения товара.
В бывшем СССР этот знак был неизвестен до появления компьютера. Название «собака» получило распространение в связи с появлением на ЭВМ игры, где символ @ бегал по экрану и по сценарию игры означал собаку.
Другая версия происхождения названия: на алфавитно-цифровых мониторах персональных компьютеров серии ДВК (1980-е годы) «хвостик» рисуемого на экране изображения этого символа был очень коротким, что придавало ему сходство со схематически нарисованной собачкой.
В то же время, в переводе с татарского (и некоторых других тюркских языков на территории бывшего СССР) «эт» означает «собака».
В 1990-е годы, когда значок @ впервые пытались перевести на русский, существовало множество равноправных вариантов — «кракозябра», «закорючка», «лягушка», «ухо» и другие. В настоящее время они практически исчезли.
Как называют символ @ в других странах
Но, пожалуй, наибольшее удивление в истории символа @ вызывает то, как в наши дни он произносится и что означает на разных языках. Испанцы и португальцы по-прежнему используют слово «арроба», которое французы у них «одолжили» и переделали в «аробаз» (arobas). Американцы и британцы, конечно же, называют его «знак эт» (at sign). Это же словосочетание в различных вариациях было перенесено в другие языки, например, в немецкий (at-Zeichen), эстонский (dt-mdrk) и японский (atto maak). В Латвии и Литве используют заимствованное с английского языка et («эт») и eta («эта») с добавлением литовской морфемы в конце.
Однако в большинстве языков этот символ описывается с помощью всевозможных метафор, взятых из повседневной жизни. Наиболее характерным является упоминание животных. Голландцы, финны, немцы, венгры, поляки и африканцы видят в нем обезьяний хвост. Улиткой (по-английски — snail) знак @ называют во Франции (petit escargot) и Италии (chiocciola), а также на иврите, корейском и эсперанто (heliko). Датчане и шведы могут назвать этот знак snabel-a (слоновий хобот с буквой а на конце), болгары — кльомба или маймунско а («обезьяна А»), венгры — червяком, норвежцы — свиным хвостом, китайцы и тайванцы — мышонком, а русские — собакой (или собачкой). В Турции — розочка, в Сербии — «чокнутая A», во Вьетнаме — «скрюченная A», на Украине — «равлик» (улитка), «песик» или опять же «собака», в Польше, Хорватии, Словении и Румынии — «malpa» (обезьяна), в Греции — «папаки» (маленькая утка). А финское слово miukumauku напоминает свернувшуюся калачиком спящую кошку.
Еще одним богатым источником названий для @ является пища.
Некоторые шведы называют этот значок «булочка с корицей» (kanelbulle).
В Чехии и Словакии его называют Zavináč, то есть рольмопс (сельдь в маринаде).
Испанцы иногда называют его ensaimada — конфета, имеющая форму спирали, которую обычно делают на Майорке.
А на иврите часто используется слово shtrudl ‘штрудель’ (нем. Strudel ‘вихрь, воронка, водоворот’). Вероятно, из-за сходства знака @ и закрученного вида штруделя сбоку слово «штрудель» стало разговорным названием данного символа в Израиле.
В Японии этот символ называют «водоворот» или «наруто» (по названию водоворота Наруто).
Как видим, почти везде этот символ назвали тем или иным словом по принципу сходства. ♦
Источники: http://www.liveinternet.ru
http://uainfo.org
http://www.osp.ru
Регулярные выражения — PHP с нуля
Регулярные выражения — это специальные шаблоны для поиска подстроки в тексте. С их помощью можно решить одной строчкой такие задачи: «проверить, содержит ли строка цифры», «найти в тексте все адреса email», «заменить несколько идущих подряд знаков вопроса на один».
Начнем с одной народной программистской мудрости:
Некоторые люди, сталкиваясь с проблемой, думают: «Ага, я умный, я решу её с помощью регулярных выражений». Теперь у них две проблемы.
Это довольно-таки объемный и сложный урок.
Примеры шаблонов
Начнем с пары простых примеров. Первое выражение на картинке ниже ищет
последовательность из 3 букв, где первая буква это «к», вторая — любая русская буква и
третья — это «т» без учета регистра (например, «кот» или «КОТ» подходит
под этот шаблон). Второе выражение ищет в тексте время в формате 12:34
.
Любое выражение начинается с символа-ограничителя (delimiter по англ.). В качестве
него обычно используют символ /
, но можно использовать и другие
символы, не имеющие специального назначения в регулярках, например, ~
,
#
или @
. Альтернативные разделители используют, если в
выражении может встречаться символ
/
. Затем идет сам шаблон строки,
которую мы ищем, за
ним второй ограничитель и в конце может идти одна или несколько букв-флагов. Они
задают дополнительные опции при поиске текста. Вот примеры флагов:
i
— говорит, что поиск должен вестись без учета регистра букв (по умолчанию регистр учитывается)u
— говорит, что выражение и текст, по которому идет поиск, исплоьзуют кодировку utf-8, а не только латинские буквы. Без него поиск русских (и любых других нелатинских) символов может работать некорректно, потому стоит ставить его всегда.
Сам шаблон состоит из обычных символов и специальных конструкций. Ну
например, буква «к» в регулярках обозначает саму себя, а вот символы [0-5]
значат «в этом месте может быть любая цифра от 0 до 5». Вот полный список
специальных символов (в мануале php их называют метасимволы),
а все остальные символы в регулярке — обычные:
Ниже мы разберем значение каждого из этих символов (а также объясним почему буква
«ё» вынесена отдельно в первом выражении), а пока попробуем
применить наши регулярки к тексту и посмотреть, что выйдет. В php есть
специальная функция preg_match($regexp, $text, $match)
,
которая принимает на вход регулярку, текст и пустой массив. Она проверяет,
есть ли в тексте подстрока, соответствующая данному шаблону и возвращает
0
, если нет,
или 1
, если она есть. А в переданный массив в элемент с индексом
0 кладется первое найденное совпадение с регуляркой. Напишем простую
программу, применяющую регулярные выражения к разным строкам:
Код | Результат |
---|---|
$regexp = "/к[а-яё]т/ui"; // строки, к которым мы будем по очереди применять регулярку $lines = [ 'рыжий кот', 'рыжий крот', 'кит и кот' ]; foreach ($lines as $line) { echo "Строка: $line\n"; // сюда будет помещено первое // совпадение с шаблоном $match = []; if (preg_match($regexp, $line, $match)) { echo "+ Найдено слово '{$match[0]}'\n"; } else { echo "- Ничего не найдено\n"; } } |
|
Познакомившись с примером, изучим регулярные выражения более подробно. a-c] значит «один любой символ,
кроме a, b или c».
abc+
знак «плюс» относится только
к букве c и это выражение ищет слова вроде abc, abcc, abccc. А если
поставить скобки a(bc)+
то квантифиактор плюс относится
уже к последовательности bc
и выражение ищет слова
abc, abcbc, abcbcbcПримечание: в квадратных скобках можно указывать диапазоны
символов, но помни, что русская буква ё идет отдельно от
алфавита и чтобы написать «любая русская буква»,
надо писать [а-яё]
.
Бекслеши
Если ты смотрел другие учебники по регулярным выражениям, то наверно заметил,
что бекслеш везде пишут по-разному. Где-то пишут один бекслеш:
\d
, а здесь в примерах он повторен 2 раза: \\d
.
Почему?
Язык регулярных выражений требует писать бекслеш один раз. Однако в
строках в одиночных и двойных кавычках в PHP бекслеш тоже имеет особое
значение: мануал про строки.
Ну например, если написать $x = "\$";
то PHP воспримет это как
специальную комбинацию и вставит в строку только символ $
(и движок регулярных выражений не узнает о бекслеше перед ним). Чтобы
вставить в строку последовательность \$
, мы должны удвоить бекслеш
и записать код в виде $x = "\\$";
.
По этой причине в некоторых случаях (там, где последовательность символов имеет специальный смысл в PHP) мы обязаны удваивать бекслеш:
- Чтобы написать в регулярке
\$
, мы пишем в коде"\\$"
- Чтобы написать в регулярке
\\
, мы удваиваем каждый бекслеш и пишем"\\\\"
- Чтобы написать в регулярке бекслеш и цифру (
\1
), бекслеш надо удвоить:"\\1"
В остальных случаях один или два бекслеша дадут один и тот же
результат: "\\d"
и "\d"
вставят в строку пару
символов \d
— в первом случае 2 бекслеша это последовательность
для вставки бекслеша, во втором случае специальной последовательности
нет и символы вставятся как есть. Проверить, какие символы вставятся в строку,
и что увидит движок регулярных выражений, можно с помощью
echo:
echo "\$";
. Да, сложно, а что поделать?
Специальные конструкции в регулярках
\d
ищет одну любую цифру,\D
— один любой символ, кроме цифры\w
соответствует одной любой букве (любого алфавита), цифре или знаку подчеркивания_
.\W
соответствует любому символу, кроме буквы, цифры, знака подчеркивания.
Также, есть удобное условие для указания на границу слова: \b
.
Эта конструкция обозначает, что с одной стороны от нее должен стоять символ,
являющийся буквой/цифрой/знаком подчеркивания (\w
), а с
другой стороны — не являющийся. Ну, например, мы хотим найти в тексте слово
«кот». Если мы напишем регулярку /кот/ui
, то она
найдет последовательность этих букв в любом месте — например, внутри слова
«скотина». Это явно не то, что мы хотели. Если же мы добавим
условие границы слова в регулярку:
/\bкот\b/ui
, то теперь
искаться будет только отдельно стоящее слово «кот».
Мануал
- Синтаксис регулярных выражений в PHP, подробное описание
- Функции для работы с регулярными выражениями
Также, есть полезный сайт Regex101, где можно протестировать свою регулярку и проверить, что она найдет в тексте. Помни, что на том сайте бекслеши надо писать ровно один раз, и ставить флаг u не требуется.
Задачка
Напиши программу, получающую на вход автомобильный номер, и проверяющую, правильно ли он введен. Автомобильный номер имеет вид «а123вг», то есть начинается с буквы, за которой идет 3 цифры, и еще 2 буквы. Никаких посторонних символов быть в нем не должно.
Эту программу надо решить с помощью preg_match()
и регулярного
выражения. Протестировать его ты можешь например на сайте Regex101.
Задачка на проверку телефонов
Дан текст, который по идее должен быть номером телефона в виде 8-(911)-506 56 56 (т.е. человек может ввести не только цифры, но и скобки, минусы, может что-то еще). Но в реальности, пользователь может вместо номера написать что угодно. Напиши скрипт для проверки правильности введенного номера («8(911)-506 56 56» — правильный номер, «8-911-50-656-56» — правильный, «89115065656» — правильный, «02» — неправильный, «89115065656 позвать Люду» — неправильный).
Задачу надо проверить на большом числе телефонов,
чтобы убедиться что твой код правильный. Для этого давай добавим в программу
тесты, чтобы сразу было видно, верно все работает или нет.
Сделай 2 списка номеров (правильные и нет), добавь их в программу и напиши цикл,
который их по очереди прогоняет через регулярку и проверяет,
что они определяются как надо (если нет — надо вывести, какой именно номер
не распознается правильно).
Вот список номеров:
// Правильные: $correctNumbers = [ '84951234567', '+74951234567', '8-495-1-234-567', ' 8 (8122) 56-56-56', '8-911-1234567', '8 (911) 12 345 67', '8-911 12 345 67', '8 (911) - 123 - 45 - 67', '+ 7 999 123 4567', '8 ( 999 ) 1234567', '8 999 123 4567' ]; // Неправильные: $incorrectNumbers = [ '02', '84951234567 позвать люсю', '849512345', '849512345678', '8 (409) 123-123-123', '7900123467', '5005005001', '8888-8888-88', '84951a234567', '8495123456a', '+1 234 5678901', /* неверный код страны */ '+8 234 5678901', /* либо 8 либо +7 */ '7 234 5678901' /* нет + */ ];
Также, на regex101
https://regex101.com/r/qF7vT8/3 уже введены номера и можно простестировать
свою регулярку. Помни что на этом сайте надо писать бекслеш один раз,
например \s
, а не \\s
. Флаг m там стоит чтобы
^
и $
в регулярке обозначали «начало и конец
любой строки», а не «начало и конец всего текста». Флаг g (его нет в PHP,
он только на этом сайте) значит что надо искать все совпадения с
регуляркой, а не только первое.
Подсказка: не надо строить сложных выражений и предусматривать все возможные комбинации символов. Достаточно написать: сначала идет +7 или 8, за ними ровно 10 цифр, между которыми может быть любое число скобок, минусов, пробелов
Повторим
- preg_match находит первое совпадение с регулярными выражением и проверяет, соответствует ли текст или часть выражению
- preg_match_all находит все фрагменты текста, соответствующие регулярке
- preg_split разбивает текст на массив частей по регулярному выражению
- preg_replace заменяет в тексте части, соответствующие регулярке, на данную строку
Задачки (пока без картинок)
Опечаточники
Как тебе наверно известно, многие люди, занимающие государственные посты, тратят свои силы
отнюдь не на улучшение ситуации в своем городе или регионе, а на придумывание разнообразных
схем по перемещению вверенных им бюджетных средств в свои карманы.
Например, государственные органы, которые хотят провести закупки, обязаны организовать публичные торги и разместить объявление о них на сайте госзакупок. Чтобы помешать всем желающим участвовать в тендере (и чтобы отдать заказ «своим людям» и получить потом от них в свой карман часть денег), они заменяют в описании заказа некоторые русские буквы на похожие на них латинские. Таким образом, не предупрежденные заранее организации не смогут найти объявление через поиск и принять участие в конкурсе.
Давай попробуем применить наши знания языка PHP для того, чтобы вывести жуликов на чистую воду.
Задача: дан текст, содержащий слова на русском и английском языках. В некоторых словах часть русских букв заменена на похожие на них латинские, и наоборот. Напиши программу, которая находит все такие слова, выводит их и выделяет квадратными скобками первую замененную букву.
Для проверки работоспособности, попробуй применить программу к тексту из поля «Наименование заказа» на
странице (осторожно, спойлер!)
http://zakupki. gov.ru/pgz/public/action/orders/info/common_info/show?notificationId=5193640
или http://zakupki.gov.ru/pgz/public/action/orders/info/common_info/show?notificationId=5138013
ололо кто бы поверил!
Дополнительная задача: добавь в программу автоматическое исправление найденных «опечаток».
Подсказки для глупеньких: слова с опечатками найти легко: это слово, которое начинается с одной или нескольких русских букв, за которыми идет латинская. Ну или начинается с латинской, за которой идет русская. Достаточно минимальных знаний регулярных выражений, чтобы написать решение.
P.S. На сайте программистских комиксов xkcd есть комикс про регулярные выражения: перевод, оригинал (англ.).
дальше: Повторим? →
——
Куда вводить код? Что надо скачать? Читай первый урок.
Есть вопросы? Задай гуглу или автору.
Нравится урок? Лайкай, репости, приглашай друзей, пости котов и Канако,
шли добра, решай задачи, помогай новичкам! Кнопок для лайка нет, кто хочет зарепостить, всегда может сделать это ручками.
Как связаться с автором? Я хочу переодеть его в платье школьницы и жениться на нем. Ящик codedokode (кот) gmail.com ждет ваших писем. А вконтактик и фейсбучек ждут ваших лайков. Но ответ на банальные вопросы лучше искать в Гугле или на stackoverflow.
Я решил задачку!!! Молодец, делай следующий урок
Ideone не работает!11 Ну так открой Гугл и найди сайты вроде https://repl.it/languages/php , http://phptester.net/ , http://sandbox.onlinephpfunctions.com/ , http://codepad.org/ или http://www.runphponline.com/ . Не ленись.
Почему так много рекламы? Всю рекламу на сайте ставит юкоз (бесплатный хостинг же), а не я.
На сайте установлена система Google Analytics (и еще несколько аналогичных систем от юкоза). Данные о твоем IP-адресе, посещаемых страницах,
времени посещения отправляются в Google Corporation, США. Хочу знать, кто и зачем сюда заходит. Поверь,
другие сайты делают точно так же. Все сайты пишут логи.
Операторы PHP
❮ Предыдущий Далее ❯
Операторы PHP
Операторы используются для выполнения операций над переменными и значениями.
PHP делит операторы на следующие группы:
- Арифметические операторы
- Операторы присваивания
- Операторы сравнения
- Операторы увеличения/уменьшения
- Логические операторы
- Строковые операторы
- Операторы массива
- Операторы условного присваивания
Арифметические операторы PHP
Арифметические операторы PHP используются с числовыми значениями для выполнения общих арифметических операций, такие как сложение, вычитание, умножение и т. д.
Оператор | Имя | Пример | Результат | Покажи |
---|---|---|---|---|
+ | Дополнение | $х + $у | Сумма $x и $y | Попробуй » |
— | Вычитание | $х — $у | Разница $x и $y | Попробуй » |
* | Умножение | $х * $у | Произведение $x и $y | Попробуй » |
/ | Подразделение | $х / $у | Частное $x и $y | Попробуй » |
% | Модуль | $x % $y | Остаток от деления $x на $y | Попробуй » |
** | Возведение в степень | $х ** $у | Результат возведения $x в $y-ю степень | Попробуй » |
Операторы присваивания PHP
Операторы присваивания PHP используются с числовыми значениями для записи значения в переменную.
Базовым оператором присваивания в PHP является «=». Это означает, что левый операнд получает значение выражения присваивания справа.
Назначение | То же, что… | Описание | Покажи |
---|---|---|---|
х = у | х = у | Левому операнду присваивается значение выражения справа | Попробуй » |
х += у | х = х + у | Дополнение | Попробуй » |
х -= у | х = х — у | Вычитание | Попробуй » |
х *= у | х = х * у | Умножение | Попробуй » |
х /= у | х = х/у | Подразделение | Попробуй » |
х %= у | х = х % у | Модуль | Попробуй » |
Операторы сравнения PHP
Операторы сравнения PHP используются для сравнения двух значений (числа или строки):
Оператор | Имя | Пример | Результат | Покажи |
---|---|---|---|---|
== | Равно | $х == $у | Возвращает true, если $x равно $y | Попробуй » |
=== | Идентичен | $х === $у | Возвращает true, если $x равно $y и они одного типа.![]() | Попробуй » |
!= | Не равно | $х != $у | Возвращает true, если $x не равно $y | Попробуй » |
<> | Не равно | $х <> $у | Возвращает true, если $x не равно $y | Попробуй » |
!== | Не идентичны | $х !== $у | Возвращает true, если $x не равно $y или они не одного типа. | Попробуй » |
> | Больше | $х > $у | Возвращает true, если $x больше $y | Попробуй » |
< | Менее | $х < $у | Возвращает true, если $x меньше $y | Попробуй » |
>= | Больше или равно | $х >= $у | Возвращает true, если $x больше или равно $y | Попробуй » |
<= | Меньше или равно | $х <= $у | Возвращает true, если $x меньше или равно $y | Попробуй » |
<=> | Космический корабль | $х <=> $у | Возвращает целое число, меньшее, равное или большее нуля, в зависимости от
если $x меньше, равно или больше $y.![]() | Попробуй » |
Операторы увеличения/уменьшения PHP
Операторы увеличения PHP используются для увеличения значения переменной.
Операторы декремента PHP используются для уменьшения значения переменной.
Оператор | Имя | Описание | Покажи |
---|---|---|---|
++$x | Предварительное увеличение | Увеличивает $x на единицу, затем возвращает $x | Попробуй » |
$х++ | Постинкремент | Возвращает $x, затем увеличивает $x на единицу | Попробуй » |
—$x | Преддекремент | Уменьшает $x на единицу, затем возвращает $x | Попробуй » |
$х— | Постдекремент | Возвращает $x, затем уменьшает $x на единицу | Попробуй » |
Логические операторы PHP
Логические операторы PHP используются для объединения условных операторов.
Оператор | Имя | Пример | Результат | Покажи |
---|---|---|---|---|
и | и | $х и $у | Истинно, если и $x, и $y истинны | Попробуй » |
или | или | $x или $y | Истинно, если верно либо $x, либо $y | Попробуй » |
хор | Хор | $x или $y | Истинно, если истинно либо $x, либо $y, но не оба одновременно | Попробуй » |
&& | и | $х && $у | Истинно, если и $x, и $y истинны | Попробуй » |
|| | или | $х || $y | Истинно, если верно либо $x, либо $y | Попробуй » |
! | Не | !$x | Истинно, если $x неверно | Попробуй » |
Строковые операторы PHP
PHP имеет два оператора, специально разработанных для строк.
Оператор | Имя | Пример | Результат | Покажи |
---|---|---|---|---|
. | Конкатенация | $txt1 . $txt2 | Объединение $txt1 и $txt2 | Попробуй » |
.= | Назначение конкатенации | $txt1 .= $txt2 | Добавляет $txt2 к $txt1 | Попробуй » |
Операторы массива PHP
Операторы массива PHP используются для сравнения массивов.
Оператор | Имя | Пример | Результат | Покажи |
---|---|---|---|---|
+ | Союз | $х + $у | Объединение $x и $y | Попробуй » |
== | Равенство | $х == $у | Возвращает true, если $x и $y имеют одинаковые пары ключ/значение | Попробуй » |
=== | Личность | $х === $у | Возвращает true, если $x и $y имеют одинаковые пары ключ/значение в том же порядке и одного типа | Попробуй » |
!= | Неравенство | $х != $у | Возвращает true, если $x не равно $y | Попробуй » |
<> | Неравенство | $х <> $у | Возвращает true, если $x не равно $y | Попробуй » |
!== | Неидентификация | $х !== $у | Возвращает true, если $x не совпадает с $y | Попробуй » |
Операторы условного присваивания PHP
Операторы условного присваивания PHP используются для установки значения в зависимости от условий:
Оператор | Имя | Пример | Результат | Покажи |
---|---|---|---|---|
?: | Тернарный | $x = expr1 ? выражение2 : выражение3 | Возвращает значение $x.![]() Значение $x равно expr2 если expr1 = ИСТИНА. Значение $x равно expr3 , если expr1 = FALSE | Попробуй » |
?? | Объединение с нулевым значением | $x = expr1 ?? выражение2 | Возвращает значение $x. Значение $x равно expr1 if expr1 существует и не равно NULL. Если expr1 не существует или имеет значение NULL, значение $x равно выражение2 . Представлено в PHP 7 | Попробуй » |
PHP-упражнения
Проверьте себя с помощью упражнений
Упражнение:
Умножьте 10
на 5
и выведите результат.
эхо 10 5;
❮ Предыдущий Следующий ❯
НАБОР ЦВЕТА
Лучшие учебники
Учебник HTMLУчебник CSS
Учебник JavaScript
Учебник How To
Учебник SQL
Учебник Python
Учебник по W3.

Учебник по Bootstrap
Учебник по PHP
Учебник по Java
Учебник по C++
Учебник по jQuery
Основные ссылки
HTML ReferenceCSS Reference
JavaScript Reference
SQL Reference
Python Reference
W3.CSS Reference
Bootstrap Reference
PHP Reference
HTML Colors
Java Reference
Angular Reference
jQuery Reference
7 Top7 Examples
Примеры HTML
Примеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3.CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery
FORUM | О
W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения.
Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования,
куки-файлы и политика конфиденциальности.
Copyright 1999-2023 Refsnes Data. Все права защищены.
W3Schools использует W3.CSS.
Learn PHP: Learn PHP Variables Cheatsheet
Анализ переменных в строках PHP
В PHP переменные можно анализировать в строках, указанных в двойных кавычках ( "
).
Это означает, что внутри строки компьютер заменит вхождение переменной значением этой переменной
Когда дополнительные допустимые символы идентификатора (т. е. символы, которые могут быть включены в имя переменной) должны отображаться рядом со значением переменной, имя переменной может быть завернуто в фигурные брекеты {}
, чтобы избежать путаницы с именем переменной.
$my_var = "кошка";
echo "На коврике есть $my_var";
/* Если было три кота, то вы можете ввести: */
echo "На коврике три {$my_var}";
/* Фигурные скобки помогают избежать путаницы между именем переменной и буквой s, поэтому PHP не считает имя переменной my_vars */
Переназначение переменных PHP
В PHP переменным присваиваются значения с помощью оператора присваивания ( =
). Позже той же самой переменной можно присвоить новое значение с помощью того же оператора.
Этот процесс известен как переназначение .
$var1 = "Боб";
эхо $var1;
// var1 содержит значение "Боб"
$var1 = "Джон";
эхо $var1;
// var1 теперь содержит значение "John"
Объединение строк в PHP
В PHP, если вы хотите соединить две строки вместе, вам нужно использовать .
оператор.
Этот процесс называется объединением . Поставил .
между двумя строками, чтобы соединить их.
Обратите внимание, что строки соединяются как есть, без вставки пробела. Поэтому, если вам нужно поставить пробелы, вам нужно вручную включить пробелы в строку.
echo "Привет,"." Добро пожаловать в Codecademy!";
// печатает — Привет, добро пожаловать в Codecademy!
Добавление строки в PHP
В PHP есть ярлык для добавления новой строки в конец другой строки. Это можно легко сделать с помощью оператора присваивания конкатенации строк (
.=
).
Этот оператор добавит значение справа к значению слева, а затем переназначит результат переменной слева.
$str = "Здравствуйте, ";
$str .= "Мир!";
эхо $str;
// Вывод: Привет, мир!
Строки PHP
В PHP строка представляет собой последовательность символов, заключенных в двойные кавычки. Он может быть любой длины и содержать любые буквы, цифры, символы и пробелы.
эхо "Привет 123"; // печатает Hello 123
Копирование переменных PHP
В PHP значение одной переменной может быть присвоено другой переменной.
Это создает копию значения этой переменной и присваивает ей новое имя переменной.
Изменения в исходной переменной не повлияют на копию, а изменения в копии не повлияют на оригинал. Эти переменные являются совершенно отдельными объектами.
$original = "Ice T";
$копия = $оригинал;
$original = "Чай со льдом";
эхо $копия; // "Лед Т";
Экранирующие последовательности PHP String
В PHP иногда необходимо экранировать специальные символы, чтобы включить их в строку. Escape-последовательности начинаются с символа обратной косой черты ( \
).
Существует множество escape-последовательностей, которые можно использовать для выполнения различных задач. Например, чтобы включить новую строку в строку, можно использовать последовательность \n
. Чтобы включить двойные кавычки, можно использовать последовательность \"
. Аналогично, чтобы включить одинарные кавычки, можно использовать последовательность \'
.
echo "Привет, мир!\nЭто строка!";
/* печатает-
Привет, Мир!
Это строка!
*/
Порядок оценки PHP во время присваивания
В PHP, когда происходит присваивание, операции справа от оператора присваивания ( =
) сначала оцениваются до одного значения. Результат этих операций затем будет присвоен переменной.
$var1 = 5 + 6/2;
/* Здесь сначала будут выполняться операции справа от оператора присваивания. Таким образом, первые 6 будут делиться на 2 (6/2 = 3). Затем к 5 прибавится 3 (5 + 3 = 8). Наконец, значение 8 будет присвоено переменной $var1. */
эхо $var1;
// Вывод: 8
Переменные PHP
В PHP переменным присваиваются значения с помощью оператора присваивания ( =
).
Имена переменных могут содержать цифры, буквы и символы подчеркивания ( _
). Символ ( $
) всегда должен предшествовать имени переменной. Они не могут начинаться с цифры и не могут содержать пробелы или специальные символы.
В PHP принято использовать чехол со змеей для именования переменных; это означает, что слова нижнего регистра разделяются символом подчеркивания ( _
). Имена переменных чувствительны к регистру.
$my_variable = "Здравствуйте";
$another_cool_variable = 25;
Оператор присваивания ссылки PHP
В PHP оператор присваивания ссылки ( =&
) используется для создания новой переменной в качестве псевдонима для существующей области памяти.
Другими словами, оператор присваивания ссылки ( =&
) создает два имени переменных, которые указывают на одно и то же значение. Таким образом, изменения одной переменной повлияют на другую, без необходимости копировать существующие данные.
$var1 = 5;
$var2 =& $var1;
$var1 = 6;
эхо $var2;
// Вывод: 6
Целочисленные значения в PHP
PHP поддерживает целых значений для чисел.
Целые числа представляют собой набор всех целых чисел, их отрицательных аналогов и нуля. Другими словами, целое число — число множества ℤ = {…, -2, -1, 0, 1, 2, …}.
Оператор возведения в степень в PHP
PHP поддерживает арифметический оператор для возведения в степень ( **
).
Этот оператор дает результат возведения значения слева в степень значения справа.
$n = 4;
эхо 2 ** 4;
// Вывод: 16
Арифметические операторы в PHP
PHP поддерживает арифметических операций для сложения ( +
), вычитания (-
), умножения ( *
) и деления (/
).
Операторы PHP будут возвращать целых чисел всякий раз, когда результат операции оценивается как целое число. Если результат представляет собой дробь или десятичное число, то он вернет число с плавающей запятой .
$а = 6/3;
// Переменная $a будет содержать целочисленное значение, так как операция возвращает целое число.
![]()
$b = 7/3;
// Переменная $b будет содержать значение с плавающей запятой, поскольку операция оценивается как десятичное число.
Оператор по модулю
PHP поддерживает оператор по модулю ( %
). Оператор по модулю возвращает остаток от деления левого операнда на правый операнд. Операнды операции по модулю преобразуются в целые числа перед выполнением операции. Операция возвращает целое число с тем же знаком, что и делимое.
$а = 9 % 2,3;
//2.3 преобразуется в целое число 2. Остаток от 9 % 2 равен 1. Таким образом, переменная $a будет содержать целочисленное значение 1.
$b = -19 % 4;
//Остаток этой операции равен -3. Таким образом, переменная $b будет содержать целочисленное значение -3.
$c = 20 % 2;
//Остаток этой операции равен 0. Таким образом, переменная $c будет содержать целочисленное значение 0.
Числа с плавающей запятой в PHP
PHP поддерживает чисел с плавающей запятой (десятичных) чисел.