PHP8定义字符串的方法-PHP8知识详解

字符串,顾名思义,就是将一堆字符串联在一起。字符串简单的定义方法是使用英文单引号('  ')或英文双引号(" ")包含字符。另外,还可以使用定界符定义字符串。本文还介绍了字符串的连接符。

PHP8定义字符串的方法

一、使用单引号或双引号定义字符串

字符串是指一连串不中断的字符。这里的字符主要包括以下几种类型。

1.1、字母类型,如a、b、c、d等。

1.2、数字类型,如1、2、3、4等。

1.3、特殊字符型,如!、@、#、¥、%、&等。

1.4、不可见字符型,如回车符、tab符、换行符等。

下面所有单引号和双引号,来定义一个普通字符,并注意单双号的区别:

<?PHP
$a = "PHP8";                //定义变量$a,使用双引号定义
$b = 'PHP8';                //定义变量$b,使用单引号定义
$c = "我们正在学习的是$a";  //定义变量$c,使用双引号定义
$d = '我们正在学习的是$a';  //定义变量$d,使用单引号定义
echo $a;                    //输出变量$a
echo "<br>";                //输出换行
echo $b;                    //输出变量$b
echo "<br>";                //输出换行
echo $c;                    //输出变量$c
echo "<br>";                //输出换行
echo $d;                    //输出变量$d
?>

以上PHP8代码执行结果为:

PHP8
PHP8
我们正在学习的是PHP8
我们正在学习的是$a

从以上的运行结果可以得出:

1、仅仅输出字符串的时候,双引号和单引号是没有区别的。

2、当在字符串中输出变量的时候,就不一样了,双引号会输出变量的值,单引号则把变量当成普通的字符串原封不动的输出。

二、使用定界符定义字符串

定界符(<<<)用于定义格式化的大文本,这里的格式化是指文本中的格式被保留,所以文本中不需要转义字符。使用定界符的语法格式如下:

<?php
$string = <<< str
字符串的具体内容
str;
?>

 这里的str为指定的标识符,标识符可以自己设定,记得要前后保持一致。

使用定界符和双引号一样,包含的变量也会替换成实际的值。

参考案例如下:

<?php
$a = "PHP8";
$b = "我们正在学习的是$a";
$c = <<< str
我们正在学习的是$a
str;
echo $b;
echo "<br>";
echo $c;
?>

上面代码在PHP8中,运行结果如下:

我们正在学习的是PHP8
我们正在学习的是PHP8

三、字符串的连接符

字符串的连接符使用非常的频繁,在前面的学习中,我们学习了使用英文的“.”(点号)来链接,还可以使用{}来连接字符串。

3.1、使用“.”连接字符串。

它可以连接两个字符串,也可以连接两个字符串变量,还可以连接字符串和字符串变量。

示范代码如下:

<?php
$a = "我们正在学习的是";
$b = "PHP8";
echo $a.$b;
?>

在PHP8中运行的结果如下:

我们正在学习的是PHP8

3.2、使用“{}”连接字符串。

在PHP编程中,{}也是我们经常使用的连接字符的语法,特别是在各种cms中,我们经常看见,某些变量就是使用{}来链接的,下面是一个使用{}连接字符串的示范:

<?php
$a = "PHP";
$b = "PHP8";
$c = "我是一名{$a}程序员,我正在学习的是{$b}";
echo $c;
?>

在PHP8中运行的结果为:

我是一名PHP程序员,我正在学习的是PHP8

到此为止,使用单引号或双引号定义字符串、使用定界符定义字符串和字符串的连接符就讲解完毕了。欢迎你学习《PHP8知识详解》系列教程的其他知识点。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/70508.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数据结构和算法三(排序)

列表排序 排序类型&#xff1a; 一、冒泡排序&#xff1a; 屏幕录制2023-07-25 13.05.12 def bubble_sort(li):exchangeFalseif len(li)<1:return lifor i in range(len(li)-1):for j in range(len(li)-i-1):if li[j]>li[j1]:li[j],li[j1]li[j1],li[j]print(li)exchangeT…

mac harbor的安装

harbor的安装 为什么要整这个呢&#xff0c;因为我在学习k8s&#xff0c;但是需要一个自己的镜像仓库。于是&#xff0c;最开始想到的就是在本地直接部署一个&#xff0c;还比较安全、快速。 直接下载了官方的项目&#xff0c;运行脚本发现出了异常&#xff0c;这种异常我已经…

项目知识点记录

1.使用druid连接池 使用properties配置文件&#xff1a; driverClassName com.mysql.cj.jdbc.Driver url jdbc:mysql://localhost:3306/book?useSSLtrue&setUnicodetrue&charsetEncodingUTF-8&serverTimezoneGMT%2B8 username root password 123456 #初始化链接数…

LiveNVR监控流媒体Onvif/RTSP功能-视频流水印如何叠加视频水印叠加动态图片叠加视频流时间示例

LiveNVR视频流水印如何叠加视频水印叠加动态图片叠加视频流时间示例 1、介绍2、摄像头OSD设置水印3、前端页面叠加4、视频流水印4.1、图片水印示例4.2、时间戳水印示例 5、RTSP/HLS/FLV/RTMP拉流Onvif流媒体服务 1、介绍 监控视频平台播放视频监控的时候&#xff0c;除了满足正…

SpringMVC的架构有什么优势?——控制器(三)

前言 「作者主页」&#xff1a;雪碧有白泡泡 「个人网站」&#xff1a;雪碧的个人网站 「推荐专栏」&#xff1a; ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄&#xff0c;vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff…

CentOS 7中,配置了Oracle jdk,但是使用java -version验证时,出现的版本是OpenJDK,如何解决?

1.首先&#xff0c;检查已安装的jdk版本 sudo yum list installed | grep java2.移除、卸载圈红的系统自带的openjdk sudo yum remove java-1.7.0-openjdk.x86_64 sudo yum remove java-1.7.0-openjdk-headless.x86_64 sudo yum remove java-1.8.0-openjdk.x86_64 sudo yum r…

STM32单片机蓝牙APP宠物自动喂食器定时语音提醒喂食系统设计

实践制作DIY- GC00162---蓝牙APP宠物自动喂食器 一、功能说明&#xff1a; 基于STM32单片机设计---蓝牙APP宠物自动喂食器 二、功能说明&#xff1a; STM32F103C系列最小系统板LCD1602显示器DS1302时钟模块5个按键语音播报模块ULN2003步进电机模块LED灯板HC-05蓝牙模块&#x…

XML方式AOP快速入门XML方式AOP配置详解

目录 1.XML方式AOP快速入门 1&#xff1a;导入AOP相关坐标 2&#xff1a;准备目标类&#xff0c;准备增强类&#xff0c;并配置给Spring管理 3&#xff1a;配置切点表达式&#xff08;那些方法要被增强&#xff09; 4&#xff1a;配置织入&#xff08;切点被哪些方法增强&…

C++初阶语法——类和对象

前言&#xff1a;C语言中的结构体&#xff0c;在C有着更高位替代者——类。而类的实例化叫做对象。 本篇文章不定期更新扩展后续内容。 目录 一.面向过程和面向对象初步认识二.类1.C中的结构体2.类的定义类的两种定义方式 3.类的访问限定符及封装访问限定符说明 4.类的实例化对…

Python中的诡异事:不可见字符!

文章目录 前言1. 起因2. 调查3. 高能4. 释惑 前言 今天分享一件很诡异的事情&#xff0c;我写代码的时候遇到了不可见的字符&#xff01;&#xff01;&#xff01; 1. 起因 今天在使用pipreqs导出项目中所依赖的库时突然报错了&#xff1a; pipreqs . --encodingutf-8 --forc…

Spring项目整合过滤链模式~实战应用

代码下载 设计模式代码全部在gitee上,下载链接: https://gitee.com/xiaozheng2019/desgin_mode.git 日常写代码遇到的囧 1.新建一个类,不知道该放哪个包下 2.方法名称叫A,干得却是A+B+C几件事情,随时隐藏着惊喜 3.想复用一个方法,但是里面嵌套了多余的逻辑,只能自己拆出来…

百川智能发布首个530亿参数闭源大模型,今年追上GPT-3.5

4月官宣创业&#xff0c;6月15日发布第一款7B开源模型&#xff0c;7月11日发布第二款13B、130亿参数开源模型。 平均保持2个月一个版本发布速度&#xff0c;8月8日&#xff0c;百川智能发布了创业以来的首个530亿参数闭源大模型——Baichuan-53B&#xff08;以下简称“53B”&a…

Android Https

本质&#xff1a;在客户端和服务端使用非对称加密协商出一套对称密钥&#xff0c;每次发送数据前加密&#xff0c;收到后解密&#xff0c;达到加密传输 http ssl 在http之下增加了安全层&#xff0c;用于保障http的加密传输 HTTPS连接 TLS连接步骤 1.客户端发送 client h…

Ubuntu 20.04 安装 Stable Diffusionn

步骤 1&#xff1a;安装 wget、git、Python3 和 Python3虚拟环境&#xff08;如果已安装可忽略这步骤&#xff09; sudo apt install wget git python3 python3-venv步骤 2&#xff1a;克隆 SD 项目到本地 git clone https://github.com/AUTOMATIC1111/stable-diffusion-webu…

Could not resolve host: mirrorlist.centos.org; Unknown error解决方法

今天服务器安装完CentOS系统后&#xff0c;安装网络的时候&#xff0c;出现无法联网yum yum -y install net-tools 以上代码无法运行并报错&#xff0c;这里我要提醒大家&#xff0c;如果在初始安装的时候选中安装网络工具模块就不用在安装net-tools了&#xff0c;因为我选中…

C#在自动化领域的应用前景与潜力

人机界面&#xff08;HMI&#xff09;开发&#xff1a;使用C#开发人机界面软件&#xff0c;实现与自动化设备的交互和监控。C#的图形界面设计能力和丰富的控件库使得开发人员能够创建直观、易用的界面。 数据采集与处理&#xff1a;C#可以与各种传感器、设备进行数据通信和采集…

Elasticsearch之kibana相关命令

1.中文分词器相关命令 2.拼音分词器相关命令

资讯速递 | ArkUI-X 预览版已正式开源!

OpenHarmony项目群技术指导委员会&#xff08;以下简称“TSC”&#xff09;-跨平台应用开发框架TSG所孵化项目 —— ArkUI-X&#xff0c;近期已正式开源 &#xff0c;开发者基于一套主代码&#xff0c;就可以将在OpenHarmony上开发的精美、高性能应用同时运行在Android、iOS等其…

21 | 朝阳医院数据分析

朝阳医院2018年销售数据为例,目的是了解朝阳医院在2018年里的销售情况,通过对朝阳区医院的药品销售数据的分析,了解朝阳医院的患者的月均消费次数,月均消费金额、客单价以及消费趋势、需求量前几位的药品等。 import numpy as np from pandas import Series,DataFrame impo…

成功解决ubuntu-22.04的sudo apt-get update一直卡在【0% [Waiting for headers]】

成功解决ubuntu-22.04的sudo apt-get update一直卡在【0% [Waiting for headers]】 问题描述解决方案 问题描述 在下载安装包的时候一直卡在0% [Waiting for headers]&#xff0c;报错信息如下&#xff1a; Get:1 file:/var/cudnn-local-repo-ubuntu1804-8.5.0.96 InRelease […