Что значит в php
Перейти к содержимому

Что значит в php

  • автор:

Ключевые PHP-операторы

Операторы — это символы, которые вы можете использовать для манипулирования переменными. Операторы в PHP работают почти по такому же принципу, что и в математике.

Оператор присваивания

Первый оператор, с которым вы должны познакомиться, — это оператор присваивания (“=”).

Обратите внимание: это не то же самое, что оператор равенства.

$x = 55 означает “x присваивается значение 55”, а не “x равно 55”.

Оператор равенства выражается через двойной знак равенства (“==”).

Если вы хотите получить истинное или ложное значение x=55, вам нужно написать следующее: $x == 55;

Оператор присваивания используется для присвоения значения определенным переменным.

Оператор Join

Еще одним часто используемым оператором является оператор присоединения (Join) или конкатенации.

В основном он используется для соединения двух и более строк вместе.

Пример:

$a= "apple";
$b = "pie";
$c = $a.$b;
echo $c;
?>

Результат:

Оператор Join обычно используется для присоединения одной строки к другой.

Сокращение оператора Join

Существует специальный синтаксис для написания функции Join. Вместо того чтобы повторять одну из переменных с обеих сторон, вы можете просто написать $a .= $b, что означает “присоединить $b к $a”.

$a .= $b значит $a = $a.$b;

Арифметические операторы

Арифметические операторы в языке PHP работают практически так же, как и в математике.

Они используются между двумя переменными для выполнения определенных математических операций.

Поскольку это арифметические операторы, обе переменные должны быть числами.

Пример:

$a = 100;
$b = 200;
$result = $a+$b;
echo $result;
?>

Результат:

Они работают по тому же принципу, что и в математике.

Пример:

$a = 100;
$b = 9;
$result = $a-$b;
echo $result;
echo "
";
$result = $a*$b;
echo $result;
echo "
";
$result = $a/$b;
echo $result;
?>

Результат:

Вы также можете использовать “ — ” для присвоения отрицательного числа.

Таким образом, операторы языка PHP и в самом деле не слишком отличаются от математических.

Единственный оператор, который, возможно, покажется вам странным, — это оператор модулей %. Он означает “остаток от”: так, $a%$b означает “то, что остается после деления $a на $b”.

echo 27%10;
echo "
";
echo 27%2;
echo "
";
echo 27%9;
?>

Интересное (но несущественное) примечание: технически вы можете использовать арифметические операторы со строками. Но поскольку PHP преобразует строку в число, с практической точки зрения это совершенно бессмысленно.

Объединение присваиваний

При желании вы можете объединить два оператора присваивания вместе.

Пример:

$a = 5;
$b = 10;
$c = $b($a=10);
$c == 20;
?>

Наша цель в этом случае — сохранить строку.

В дополнение к простому присваиванию можно использовать так называемые комбинированные операторы присваивания. Это сокращенные варианты присваивания некоторых операторов.

Например, если мы хотим увеличить значение $a на 7, мы можем написать $a = $a+7 ; но можно также использовать комбинированное присваивание $a += 7 . Это то же самое, что $a = $a+7 .

Еще одно действие, которое можно сделать с переменными, — это увеличить или уменьшить их вручную. Это можно сделать, добавив a++ или $a —перед или после переменной.

С помощью знаков “+” можно увеличить значение переменной на 1.

Это эквивалентно $a = $a + 1 ;

Есть ли разница, где ставить знаки ++ или — ? Да, есть.

Если вы ставите плюсы перед переменной, то это добавляет 1 к переменной до того, как ваш код начнет с ней работать.

Если вы ставите плюсы после переменной, то вы увеличиваете значение переменной только после работы с ней.

Echo $a++ сначала покажет 17, а затем увеличит значение $a с 17 до 18.

Echo ++$a сначала увеличит значение $a до 18, а затем выведет его на экран.

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

Оператор ссылок

Используя этот оператор, мы как бы говорим: “Я отдаю вам свою переменную, и теперь все, чему вы будете равны, буду равен и я”.

$a = 7; 
$b = &$a;
$b = 11;
?>

Операторы сравнения

Оператор равенства

Как уже говорилось выше при рассмотрении оператора присваивания, “==” — это способ проверки, равно ли что-то чему-то другому.

Пример:

$a = 100;
$b = 100;
echo $a==$b;
?>

Результат:

Тут легко допустить ошибку и случайно поставить “=”.

Проверка типа переменной

PHP по умолчанию содержит ряд функций, позволяющих проверить или устанавливать тип переменной.

Две наиболее важные из них — gettype() и settype() .

Их названия говорят сами за себя.

Просто введите переменную в gettype() — и получите ее тип.

Изменить тип переменной можно с помощью settype() .

Пример:

$a = 71;
echo gettype($a);
echo "
";
settype($a, "double");
echo gettype($a);
?>

Результат:

  • Как использовать PHP для вывода данных?
  • PHP: типы операторов
  • Как находить уязвимости в коде на PHP?

Что значит «.=» в php?

Не могу найти значение символа .= (точка равно ) в php. И не могу понять, что означает $key& , конкретно зачем амперсанд в конце. Создаю функцию по удалению get -параметра из url. Пример:

$ulr .= "$key&" 

Отслеживать
29k 1 1 золотой знак 21 21 серебряный знак 43 43 бронзовых знака
задан 15 фев 2018 в 10:27
111 1 1 серебряный знак 10 10 бронзовых знаков

$ulr .= «$key&» == $ulr = $ulr.»$key&» php.net/manual/ru/language.operators.string.php зачем амперсант в конце Да просто литерал. разделитель параметров в URL, вероятно. И эта. в слове «амперсанд» нет буквы «т».

15 фев 2018 в 10:30

амперсанд это просто символ. То есть, если $key был равен 123, то к строке $url будет дописана строка «123&»

15 фев 2018 в 10:32
parse_url , parse_str , unset и implode вам в помощь
15 фев 2018 в 10:37
хотя можно и preg_replace -ом все решить
15 фев 2018 в 10:38
Спасибо большое.
15 фев 2018 в 11:02

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

Добавить в переменную
Например:
$a = ‘abc’;
$a .= ‘123’;
echo $a; //Выведит abc123

Отслеживать
ответ дан 15 фев 2018 в 10:45
MyLoveIsSharks MyLoveIsSharks
348 1 1 серебряный знак 14 14 бронзовых знаков

    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.10.27.43697

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Выражения

Выражения — это самые важные строительные элементы PHP. Почти всё, что вы пишете в PHP, является выражением. Самое простое и точное определение выражения — «все что угодно, имеющее значение».

Основными формами выражений являются константы и переменные. Если вы записываете $a = 5 , вы присваиваете 5 переменной $a . 5 , очевидно, имеет значение 5 или, другими словами, 5 — это выражение со значением 5 (в данном случае 5 — это целочисленная константа).

После этого присвоения вы ожидаете, что значением $a также является 5, поэтому, если вы написали $b = $a , вы полагаете, что работать это будет так же, как если бы вы написали $b = 5 . Другими словами, $a это также выражение со значением 5. Если всё работает верно, то именно так и произойдёт.

Немного более сложными примерами выражений являются функции. Например, рассмотрим следующую функцию:

function foo ()
return 5 ;
>
?>

Исходя из того, что вы хорошо знакомы с концепцией функций (если нет, то прочитайте главу о функциях), вы полагаете, что запись $c = foo() абсолютно эквивалентна записи $c = 5 , и вы правы. Функции — это выражения, значением которых является то, что возвращает функция. Поскольку foo() возвращает 5, значением выражения ‘ foo() ‘ является 5. Как правило, функции возвращают не просто статическое значение, а что-то вычисляют.

Разумеется, значения в PHP не обязаны быть целочисленными, и очень часто ими не являются. PHP поддерживает четыре типа скалярных значений: целочисленные ( int ), с плавающей точкой ( float ), строковые значения ( string ) и булевы ( bool ) значения (скалярными являются значения, которые вы не можете ‘разбить’ на меньшие части, в отличие, например, от массивов). PHP поддерживает также два комбинированных (не скалярных) типа: массивы и объекты. Любое значение такого типа может присваиваться переменной или возвращаться функцией.

Однако PHP, как и многие другие языки, понимает гораздо больше выражений. PHP — это язык, ориентированный на выражения и рассматривающий почти все как выражение. Вернёмся к примеру, с которым мы уже имели дело: $a = 5 . Легко заметить, что здесь присутствуют два значения — значение целочисленной константы 5 и значение переменной $a , также принимающей значение 5. Но на самом деле здесь присутствует и ещё одно значение — значение самого присвоения. Само присвоение вычисляется в присвоенное значение, в данном случае — в 5. На практике это означает, что $a = 5 , независимо от того, что оно делает, является выражением со значением 5. Таким образом, запись $b = ($a = 5) равносильна записи $a = 5; $b = 5; (точка с запятой обозначает конец выражения). Поскольку операции присвоения анализируются справа налево, вы также можете написать $b = $a = 5 .

Другой хороший пример ориентированности на выражения — префиксный и постфиксный инкремент и декремент. Пользователи PHP и многих других языков возможно уже знакомы с формой записи variable++ и variable— . Это операторы инкремента и декремента. Также как и C, PHP поддерживает два типа инкремента — префиксный и постфиксный. Они оба инкрементируют значение переменной и эффект их действия на неё одинаков. Разница состоит в значении выражения инкремента. Префиксный инкремент, записываемый как ++$variable , вычисляется в инкрементированное значение (PHP инкрементирует переменную до того как прочесть её значение, отсюда название ‘пре-инкремент’). Постфиксный инкремент, записываемый как $variable++ , вычисляется в первоначальное значение переменной $variable до её приращения (PHP инкрементирует переменную после прочтения её значения, отсюда название ‘пост-инкремент’).

Очень распространённым типом выражений являются выражения сравнения. Результатом вычислений являются false (ложь) или true (истина). PHP поддерживает операции сравнения > (больше), >= (больше либо равно), == (равно), != (не равно), < (меньше) и

Последний пример выражений, который мы здесь рассмотрим, это смешанные выражения операции и присвоения. Вы уже знаете, что если вы хотите увеличить $a на 1, вы можете просто написать $a++ или ++$a . Но что, если вы хотите прибавить больше, чем единицу, например, 3? Вы могли бы написать $a++ много раз, однако, очевидно это не очень рациональный и удобный способ. Гораздо более распространённой практикой является запись вида $a = $a + 3 . $a + 3 вычисляется в значение $a плюс 3 и снова присваивается $a , увеличивая в результате $a на 3. В PHP, как и в некоторых других языках, таких как C, вы можете записать это более коротким образом, что увеличит очевидность смысла и быстроту понимания кода по прошествии времени. Прибавить 3 к текущему значению $a можно с помощью записи $a += 3 . Это означает дословно «взять значение $a , прибавить к нему 3 и снова присвоить его переменной $a «. Кроме большей понятности и краткости, это быстрее работает. Значением $a += 3 , как и обычного присвоения, является присвоенное значение. Обратите внимание, что это НЕ 3, а суммированное значение $a плюс 3 (то, что было присвоено $a ). Таким образом может использоваться любой бинарный оператор, например, $a -= 5 (вычесть 5 из значения $a ), $b *= 7 (умножить значение $b на 7) и т.д.

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

$first ? $second : $third
?>

Если значением первого подвыражения является true (не ноль), то выполняется второе подвыражение, которое и будет результатом условного выражения. В противном случае будет выполнено третье подвыражение и его значение будет результатом.

Следующий пример должен помочь вам немного улучшить понимание префиксного и постфиксного инкремента и выражений:

function double ( $i )
return $i * 2 ;
>
$b = $a = 5 ; /* присвоить значение пять переменным $a и $b */
$c = $a ++; /* постфиксный инкремент, присвоить значение $a
(5) переменной $c */
$e = $d = ++ $b ; /* префиксный инкремент, присвоить увеличенное
значение $b (6) переменным $d и $e */

/* в этой точке и $d, и $e равны 6 */

$f = double ( $d ++); /* присвоить удвоенное значение $d перед
инкрементом (2*6 = 12) переменной $f */
$g = double (++ $e ); /* присвоить удвоенное значение $e после
инкремента (2*7 = 14) переменной $g */
$h = $g += 10 ; /* сначала переменная $g увеличивается на 10,
приобретая, в итоге, значение 24. Затем значение
присвоения (24) присваивается переменной $h,
которая в итоге также становится равной 24. */
?>

Некоторые выражения могут рассматриваться как инструкции. В данном случае инструкция имеет вид ‘ expr ; ‘ — выражение с последующей точкой с запятой. В записи $b = $a = 5; , $a = 5 — это верное выражение, но само по себе не инструкция. Тогда как $b = $a = 5; является верной инструкцией.

Последнее, что стоит упомянуть, это истинность значения выражений. Во многих случаях, как правило, в условных операторах и циклах, вас может интересовать не конкретное значение выражения, а только его истинность (значение true или false ). Константы true и false (регистронезависимые) — это два возможных булевых значения. При необходимости выражение автоматически преобразуется в булев тип. Подробнее о том, как это происходит, смотрите в разделе о приведении типов.

PHP предоставляет полную и мощную реализацию выражений, и их полное документирование выходит за рамки этого руководства. Вышеприведённые примеры должны дать вам представление о том, что они из себя представляют и как вы сами можете создавать полезные выражения. Далее, для обозначения любого верного выражения PHP в этой документации мы будем использовать сокращение expr .

Что значит знак «->» в PHP?

Добрый день, Подскажите пожалуйста начинающему, что значит знак «->» в PHP? Гуголю знак не поддается ( Например как интерпритировать выражение: if ( $use_desc_for_title == 0 || empty($category->description) ) Спасибо

На сайте с 15.12.2005
25 декабря 2013, 22:59

Разработка крупных и средних проектов. Можно с криптой. Разумные цены. Хорошее качество. Адекватный подход. Продаем lenovo legion в спб, дешевле магазинов, новые, запечатанные. Есть разные. skype: edogssoft

На сайте с 07.12.2013
25 декабря 2013, 23:18
edogs:
http://www.php.net/manual/ru/language.oop5.properties.php

Большущее спасибо за оперативный ответ. Хоть понятно в какую сторону думать. и все же для наглядности «переведите» ))) пожалуйста с php на обывательский/человеческий условие if ( empty($category->description) ) ? ПС: Тапками не закидывайте пожалуйста — пытаюсь испортить первый шаблон Вордпресс 🙂 — по пути операторы php «с нуля » пытаюсь разобрать. Образование — Бейсик облегченный 🙂

На сайте с 04.07.2010
25 декабря 2013, 23:28

Переменная $category имеет свой массив, в ней есть аргумент description, то есть конструкция $category->description сразу обращается к этому аргументу. Можно еще $category[0][3] тоже самое что и $category->description

На сайте с 07.12.2013
25 декабря 2013, 23:39

AGRESSOR:
Переменная $category имеет свой массив, в ней есть аргумент description, то есть конструкция $category->description сразу обращается к этому аргументу.
Можно еще $category[0][3] тоже самое что и $category->description

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *