Php присвоить переменной строку
Переменные в PHP представлены знаком доллара с последующим именем переменной. Имя переменной чувствительно к регистру.
Имена переменных соответствуют тем же правилам, что и остальные наименования в PHP. Правильное имя переменной должно начинаться с буквы или символа подчёркивания и состоять из букв, цифр и символов подчёркивания в любом количестве. Это можно отобразить регулярным выражением: ^[a-zA-Z_\x80-\xff][a-zA-Z0-9_\x80-\xff]*$
Замечание: Под буквами здесь подразумеваются символы a-z, A-Z и байты от 128 до 255 ( 0x80-0xff ).
Замечание: $this — это специальная переменная, которой нельзя ничего присваивать. До PHP 7.1.0 было возможно косвенное присвоение (например, с использованием переменных переменных).
Для информации о функциях работы с переменными обращайтесь к разделу функций работы с переменными.
$var = ‘Боб’ ;
$Var = ‘Джо’ ;
echo » $var , $Var » ; // выведет «Боб, Джо»
?php
$ 4site = ‘ещё нет’ ; // неверно; начинается с цифры
$_4site = ‘ещё нет’ ; // верно; начинается с символа подчёркивания
$täyte = ‘mansikka’ ; // верно; ‘ä’ это (Расширенный) ASCII 228.
?>
По умолчанию переменные всегда присваиваются по значению. То есть, когда вы присваиваете выражение переменной, все значение оригинального выражения копируется в эту переменную. Это означает, к примеру, что после того как одной переменной присвоено значение другой, изменение одной из них не влияет на другую. Дополнительную информацию об этом способе присвоения смотрите в разделе Выражения.
PHP также предлагает иной способ присвоения значений переменным: присвоение по ссылке. Это означает, что новая переменная просто ссылается (иначе говоря, «становится псевдонимом» или «указывает») на оригинальную переменную. Изменения в новой переменной отражаются на оригинале, и наоборот.
Для присвоения по ссылке, просто добавьте амперсанд (&) к началу имени присваиваемой (исходной) переменной. Например, следующий фрагмент кода дважды выводит ‘ Меня зовут Боб ‘:
$foo = ‘Боб’ ; // Присваивает $foo значение ‘Боб’
$bar = & $foo ; // Ссылка на $foo через $bar.
$bar = «Меня зовут $bar » ; // Изменение $bar.
echo $bar ;
echo $foo ; // меняет и $foo.
?>?php
Важно отметить, что по ссылке могут быть присвоены только именованные переменные.
$foo = 25 ;
$bar = & $foo ; // Это верное присвоение.
$bar = &( 24 * 7 ); // Неверно; ссылка на неименованное выражение.
?php
Хорошей практикой считается инициализировать переменные, хотя в PHP это и не является обязательным требованием. Неинициализированные переменные принимают значение по умолчанию в зависимости от их типа, который определяется из контекста их первого использования: булевы принимают значение false , целые числа и числа с плавающей точкой — ноль, строки (например, при использовании в echo ) — пустую строку, а массивы становятся пустыми массивами.
Пример #1 Значения по умолчанию в неинициализированных переменных
// Неустановленная И не имеющая ссылок (то есть без контекста использования) переменная; выведет NULL
var_dump ( $unset_var );
?php
// Булевое применение; выведет ‘false’ (Подробнее по этому синтаксису смотрите раздел о тернарном операторе)
echo $unset_bool ? «true\n» : «false\n» ;
// Строковое использование; выведет ‘string(3) «abc»‘
$unset_str .= ‘abc’ ;
var_dump ( $unset_str );
// Целочисленное использование; выведет ‘int(25)’
$unset_int += 25 ; // 0 + 25 => 25
var_dump ( $unset_int );
// Использование в качестве числа с плавающей точкой (float); выведет ‘float(1.25)’
$unset_float += 1.25 ;
var_dump ( $unset_float );
// Использование в качестве массива; выведет array(1) < [3]=>string(3) «def» >
$unset_arr [ 3 ] = «def» ; // array() + array(3 => «def») => array(3 => «def»)
var_dump ( $unset_arr );
// Использование в качестве объекта; создаёт новый объект stdClass (смотрите http://www.php.net/manual/ru/reserved.classes.php)
// Выведет: object(stdClass)#1 (1) < ["foo"]=>string(3) «bar» >
$unset_obj -> foo = ‘bar’ ;
var_dump ( $unset_obj );
?>
Полагаться на значения по умолчанию неинициализированных переменных довольно проблематично при включении файла в другой файл, использующий переменную с таким же именем. В случае работы с неинициализированной переменной вызывается ошибка уровня E_WARNING (до PHP 8.0.0 выбрасывалась ошибка уровня E_NOTICE ), за исключением случая добавления элементов в неинициализированный массив. Для обнаружения инициализации переменной может быть использована языковая конструкция isset() .
User Contributed Notes 5 notes
This page should include a note on variable lifecycle:
Before a variable is used, it has no existence. It is unset. It is possible to check if a variable doesn’t exist by using isset(). This returns true provided the variable exists and isn’t set to null. With the exception of null, the value a variable holds plays no part in determining whether a variable is set.
Setting an existing variable to null is a way of unsetting a variable. Another way is variables may be destroyed by using the unset() construct.
print isset( $a ); // $a is not set. Prints false. (Or more accurately prints ».)
$b = 0 ; // isset($b) returns true (or more accurately ‘1’)
$c = array(); // isset($c) returns true
$b = null ; // Now isset($b) returns false;
unset( $c ); // Now isset($c) returns false;
?>
is_null() is an equivalent test to checking that isset() is false.
The first time that a variable is used in a scope, it’s automatically created. After this isset is true. At the point at which it is created it also receives a type according to the context.
$a_bool = true ; // a boolean
$a_str = ‘foo’ ; // a string
?>
If it is used without having been given a value then it is uninitalized and it receives the default value for the type. The default values are the _empty_ values. E.g Booleans default to FALSE, integers and floats default to zero, strings to the empty string », arrays to the empty array.
A variable can be tested for emptiness using empty();
$a = 0 ; //This isset, but is empty
?>
Unset variables are also empty.
empty( $vessel ); // returns true. Also $vessel is unset.
?>
Everything above applies to array elements too.
$item = array();
//Now isset($item) returns true. But isset($item[‘unicorn’]) is false.
//empty($item) is true, and so is empty($item[‘unicorn’]
$item [ ‘unicorn’ ] = » ;
//Now isset($item[‘unicorn’]) is true. And empty($item) is false.
//But empty($item[‘unicorn’]) is still true;
$item [ ‘unicorn’ ] = ‘Pink unicorn’ ;
//isset($item[‘unicorn’]) is still true. And empty($item) is still false.
//But now empty($item[‘unicorn’]) is false;
?>
For arrays, this is important because accessing a non-existent array item can trigger errors; you may want to test arrays and array items for existence with isset before using them.
Переменные в PHP — знакомство
При работе со значениями данных в PHP нам нужен удобный способ хранения, чтобы мы могли легко получить доступ к ним и при необходимости ссылаться на них.
PHP глобальные переменные можно рассматривать как место в памяти компьютера, где должны храниться данные. При объявлении переменной ей присваивается имя, которое может использоваться, чтобы ссылаться на нее в других местах программного кода. К значению переменной можно получить доступ, также оно может быть изменено, а тип переменной можно поменять, ссылаясь на ее имя.
Присвоение имени и создание переменной в PHP
Все имена переменных PHP должны быть снабжены префиксом $ . Он информирует препроцессор языка, что он имеет дело с переменной. Первый символ имени должен быть буквой или символом подчеркивания (_) . Остальные символы могут быть только буквами, цифрами или символами подчеркивания. Все остальные символы считаются недействительными для использования в имени переменной.
Посмотрим на некоторые допустимые и недопустимые имена переменных PHP :
$_myName // допустимо. $myName // допустимо. $__myvar // допустимо. $myVar21 // допустимо. $_1Big // недопустимо, подчеркивание должно следовать после буквы. $1Big // недопустимо - должно начинаться с буквы или символа подчеркивания. $_er-t // недопустимо - содержит буквенно-цифровой символ (-).
Имена PHP переменных чувствительны к регистру. Это означает, что PHP считает переменную $ _myVariable отличной от переменной » $ _myvariable .
Присвоение значения переменной РНР
Переменные инициализируются значениями с помощью оператора присваивания PHP (=) . Чтобы присвоить значение переменной, ее имя помещается слева от выражения, за которым следует оператор присваивания. Значение, которое присваивается после PHP объявления переменных, помещается справа от оператора присваивания. Строка, как и во всех выражениях PHP кода , завершается точкой с запятой (;) .
Начнем с присвоения слова » Круг » переменной с именем myShape :
Мы объявили переменную с именем myShape и присвоили ей строковое значение » Круг «. Аналогичным образом можно объявить переменную, содержащую численное значение:
Мы создаем переменную numberOfShapes и присваиваем ей числовое значение 6 . После того, как PHP переменная была создана, присвоенное ей значение может быть изменено с помощью оператора присваивания:
Доступ к PHP значениям переменных
Теперь мы должны рассмотреть, как получить доступ к текущему значению, присвоенному переменной. Например, если мы хотим вывести на экран значение, которое мы присваивали переменной numberOfShapes , нужно сослаться на него в команде echo :
Это приведет к следующему выводу в браузере:
Точно так же можно отобразить значение переменной myShape :
Примеры, использованные для демонстрации доступа к значениям переменных, простые, потому что у нас всегда был пробел после имени переменной. Возникает вопрос, Что делать, если нужно поставить другие символы сразу после имени PHP переменной. Например:
То, что нам нужно в этом случае выводится следующим образом:
К сожалению, PHP будет видеть th на конце имени переменной $ numberOfShapes как часть имени. Затем он попытается вывести значение переменной $ numberOfShapesth , которой не существует. Это приводит к тому, что значение этой переменной не отображается:
Можно обойти эту проблему, поставив фигурные скобки (< >) вокруг имени переменной, чтобы экранировать ее от других символов:
Что дает нам желаемый результат:
Изменение типа РНР переменной
PHP типы переменных: целое, вещественное, логическое, массив, объект и строка. Для начала рассмотрим изменение типа переменной после ее создания.
PHP является слабо типизированным языком. Правила строго типизированного языка диктуют, что как только переменная была объявлена как определенный тип, ее тип не может быть изменен позже. В Java , например, нельзя присвоить число с плавающей точкой переменной, которая первоначально была объявлена как строка.
Слабо типизированные языки, такие как PHP и JavaScript , позволяют изменять тип переменной в любой момент существования переменной путем присвоения ей значения другого типа. Например, можно создать переменную, присвоить ей целое значение, а позже поменять на string :
Процесс динамического изменения типа переменной называется автоматическим преобразованием типов.
Проверка установлена ли переменная
В PHP проверка существования переменной является часто используемой операцией. В этом языке предусмотрен механизм для обеспечения этой возможности путем использования функции isset() . Чтобы проверить, имеет ли переменная значение, вызывают функцию isset() , которой в качестве аргумента передается имя переменной:
ВЛ Виктория Лебедева автор-переводчик статьи «