搜索
首页后端开发php教程变量定义 PHP 变量定义和变量替换的方法

有两种方法把变量替换到字符串中——简单的方法和复杂的方法。
简单的方法是把变量名放在双引号字符串或heredoc中:
$who = ‘Kilroy';
$where = ‘here';
echo “$who was $where”;
Kilroy was here
复杂的方法是把要替换的变量用大括号括起来。这种方法可以用于消除歧义或替换数组查找。大括号的经典作用是把变量名从周围的文本中分隔出来:
$n = 12;
echo “You are the {$n}th person”;
You are the 12th person
如果没有大括号的话,PHP就会尝试打印出变量$nth的值。
和一些shell环境不同,在PHP字符串中变量不会重复解析,而只处理在双引号字符串中的解析,然后把其结果被作为字符串的值:
$bar = ‘this is not printed';
$foo = ‘$bar'; // 单引号
print(”$foo”); //双引号
$bar
4.1.2 用单引号括起来的字符串
Single-Quoted Strings
用单引号括起来的字符串并不替换变量。因为字符串直接量是用单引号括起来的,所以在下面的字符串中变量名没有被解析:
$name = ‘Fred';
$str = ‘Hello, $name'; // single-quoted 用单引号括起来
echo $str;
Hello, $name
在用单引号括起来的字符串中唯一可用的转义序列是 \'(把单引号放在用单引号括起来的字符串中)、\\(把一个反斜杠放在用单引号括起来的字符串中)。任何其他的反斜杠只能被解释为一个反斜杠:
$name = ‘Tim O\'Reilly'; //转义的单引号
echo $name;
$path = ‘C:\\WINDOWS'; //转义的反斜杠
echo $path;
$nope = ‘\n'; // 不是转义序列
echo $nope;
Tim O'Reilly
C:\WINDOWS
\n
4.1.3 用双引号括起来的字符串
Double-Quoted Strings
用双引号括起来的字符串将会进行变量解析并且允许使用许多转义序列。表4-1列出了在用双引号括起来的字符串中PHP认可的转义序列。
表4-1:用双引号括起来的字符串中的转义序列
转义序列 字符含义
\”
双引号
\n
换行
\r
回车
\t
制表符
\\
反斜杠
\$
美元符号
\{
左大括号
\}
右大括号
\[
左中括号
\]
右中括号
\0 through \777
用八进制表示的ASCII字符
\x0 through \xFF
用十六进制表示的ASCII字符
如果在用双引号括起来的字符串中发现一个未知的转义序列(例如,一个反斜杠后跟一个不在表4-1中的字符),就忽略这个转义序列(如果警告级设置为E_NOTICE,就会为这样的未知序列产生一个警告):
$str = “What is \c this?”; // 未知的转义序列
echo $str ;
What is \c this?
4.1.4 字符串定界
Here Documents heredoc
使用heredoc可以简单地把多行字符串放在程序中,如下所示:
$clerihew = Sir Humphrey Davy
Abominated gravy.
He lived in the odium
Of having discovered sodium.
End_Of_Quote;
echo $clerihew;
Sir Humphrey Davy
Abominated gravy.
He lived in the odium
Of having discovered sodium.
你可以把分号放在终止标识符的后面来结束语句,正如前面的代码所示。如果你在一个更复杂的表达式中使用heredoc,你需要将表达式分行来写:
printf(%s is %d years old.
Template
, “Fred”, 35);
在heredoc中的单引号和双引号被跳过(当作一般的符号):
$dialogue = “It's not going to happen!” she fumed.
He raised an eyebrow. “Want to bet?”
No_More;
echo $dialogue;
“It's not going to happen!” she fumed.
He raised an eyebrow. “Want to bet?”
在heredoc中的空白符也被保留:
$ws = boo
hoo
Enough;
// $ws = ” boo\n hoo\n”;
因为在结尾终止符前的换行符将被移除,所以下面这两个赋值是相同的:
$s = ‘Foo';
// same as 和下面的相同
$s = Foo
End_of_pointless_heredoc;
如果想用一个换行符来结束heredoc引用的字符串,则需要自己额外加入:
$s = Foo
End;
//注意Foo后面跟一个空行,不可删除

以上就介绍了变量定义 PHP 变量定义和变量替换的方法,包括了变量定义方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
如何在Python中定义变量?如何在Python中定义变量?Jun 04, 2023 am 10:02 AM

在Python中,变量可以理解为存储数据的容器。当我们需要使用或操作数据时,可以通过定义变量来存储数据,从而方便地调用和处理这些数据。下面将介绍Python中定义变量的方法。一、命名规则在Python中,变量的命名规则非常灵活,通常需要遵循以下规则:变量名由字母、下划线和数字组成,首位不能为数字。变量名可以使用大小写字母,但Python是区分大小写的。变量名

Golang函数的变量定义时的赋值方法与区别Golang函数的变量定义时的赋值方法与区别May 17, 2023 pm 07:01 PM

Golang是一种快速、高效、现代化的编程语言,它在编译时会自动检查类型,并且具有并发性和内存安全性等特点,因此被越来越多的开发者所青睐。在Golang中,我们经常需要使用函数来封装业务逻辑,而函数中的变量定义时的赋值方法是一个常见的问题,本文将详细讲解这个问题并分析其中的区别。变量定义在Golang中,可以使用var和:=两种方式来定义变量。其中,var方

如何在PHP中定义变量和常量如何在PHP中定义变量和常量May 11, 2023 pm 04:03 PM

PHP是一种被广泛使用的编程语言,具有卓越的可扩展性和实用性。在PHP中,变量和常量是两种十分重要的概念,它们可以用来存储和表示值以及存储重要的信息。在这篇文章中,我们将会详细介绍如何在PHP中定义变量和常量,以帮助初学者快速上手。一、定义变量变量是用于存储值的名字或标识符。在PHP中,变量的定义可以分为三个步骤:变量的声明、变量的赋值和使用变量。下面我们详

如何解决Python的函数变量重复定义错误?如何解决Python的函数变量重复定义错误?Jun 25, 2023 am 11:59 AM

Python的函数变量重复定义错误是一个常见问题,当一个函数中重复定义了相同名称的变量时,Python会抛出“localvariable'xxxx'redefined”错误。这个错误通常是由于函数内部的变量名和外部的变量名重复导致的。在Python中,变量作用域分为局部作用域和全局作用域,当在一个函数中定义变量时,该变量默认为局部变量,并且只能在该函数

C++编译错误:一个定义的变量必须在最上面,应该怎么修改?C++编译错误:一个定义的变量必须在最上面,应该怎么修改?Aug 22, 2023 am 11:43 AM

在C++编程中,有时会遇到一个常见的错误,即“一个定义的变量必须在最上面”的错误。这通常是由于变量定义的位置不正确导致的。在本文中,我们将讨论如何修复这个错误。在C++中,变量的定义通常需要在函数体或作用域的开始处进行。如果你定义的变量放在下面,而在调用之前,则会出现“一个定义的变量必须在最上面”的编译错误。出现这个错误的解决方案就是将变量定义移到函数或作用

解决C++编译错误:'operating on 'variable' that is being defined',如何解决?解决C++编译错误:'operating on 'variable' that is being defined',如何解决?Aug 26, 2023 pm 01:01 PM

解决C++编译错误:'operatingon'variable'thatisbeingdefined',如何解决?在C++编程中,有时候我们会遭遇到一个错误信息:'operatingon'variable'thatisbeingdefined'。这个错误信息指明我们在定义变量的同时对其进行了操作,这是不被允许的。在本文中,我们将讨论这

Golang变量定义的规范和技巧Golang变量定义的规范和技巧Jan 13, 2024 pm 03:43 PM

Golang中变量定义的规范与技巧概述:在Golang中,变量是程序中最基本的数据存储单元。正确使用变量定义的规范和技巧可以提高代码的可读性、可维护性和性能。本文将介绍一些Golang中变量定义的规范和技巧,并提供具体的代码示例。变量的命名规范:在Golang中,变量的命名是有一定规范的。变量名应该使用驼峰命名法,首字母小写。如果是私有变量,应该使用驼峰命名

Golang语言中变量定义的常见问题及解决方法Golang语言中变量定义的常见问题及解决方法Jan 10, 2024 am 09:21 AM

Golang语言中变量定义的常见问题及解决方法在使用Golang语言进行编程时,变量的定义是一个基础且常见的操作。然而,由于Golang有一些特殊的规则和规定,我们可能在变量定义过程中遇到一些问题。本文将针对常见问题进行介绍,并给出相应的解决方法和代码示例。问题一:变量声明但未使用在Golang中,如果我们声明了一个变量,但在后续的程序中并未使用该变量,编译

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前By尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具