【php基础】输出、变量、布尔类型、字符串

news2024/9/21 8:03:12

php基础补充

  • 1. 输出
  • 2.'和"的区别
  • 3.变量
    • 3.1变量的命名规则
    • 3.2 两个对象指向同一个值
    • 3.3 可变变量
  • 4.变量的作用域
  • 5. 检测变量
  • 6. 布尔类型
  • 7.字符串定义与转义
  • 8.字符串常用函数
  • 9.常量

1. 输出

echo: 输出
print: 输出,输出成功返回1
print_r(): 输出数组
var_dump(): 输出数据的详细信息,带有数据类型和数据长度

echo:用于输出一个或多个字符串。它可以输出一个以上的参数,不需要用括号将参数括起来。echo 没有返回值。

echo "Hello, world!";
echo "Hello", " world", "!";

result1: Hello world!
result2: Hello world!

print 也是一个语言结构,用于输出一个字符串。与 echo 不同的是,print 只能输出一个参数,必须用括号将参数括起来。print 的返回值为 1。
在这里插入图片描述


print_r()print_r() 用于打印关于变量的易于理解的信息,通常用于调试目的。它可以输出数组、对象等复杂数据结构的内容。print_r() 的输出会格式化数组,使其易于阅读。print_r() 的返回值为 true。
在这里插入图片描述


var_dump()var_dump() 也用于打印变量的信息,但输出的信息更详细,包括变量的类型和长度等信息。与 print_r() 不同,var_dump() 输出的信息不会格式化数组,而是以更原始的形式显示。var_dump() 的返回值为 null。
在这里插入图片描述

2.'和"的区别

在 PHP 中,使用单引号 ’ 和双引号 " 都可以用来表示字符串,它们之间有一些区别:

  1. 变量解析:
  • 单引号中的字符串会被原样输出,不会解析变量和转义字符。例如,echo 'Hello, $name'; 会输出 Hello, $name
  • 双引号中的字符串会解析变量和转义字符。例如,echo "Hello, $name"; 会输出 Hello, ,并在 $name 处插入变量的值。
  1. 转义字符:
  • 在双引号字符串中,可以使用转义字符(例如 \n 表示换行、" 表示双引号等)。
  • 在单引号字符串中,除了 \' 表示单引号外,其他转义字符会被原样输出。
  1. 速度:
  • 一般来说,单引号字符串的处理速度比双引号字符串快,因为 PHP 不需要解析变量和转义字符。

3.变量

3.1变量的命名规则

  1. 变量必须以$开头,$不是变量的一部分,仅标水后面的标识符是变量名。
  2. 除了$以外,以字母、下划线开头,后面跟着数字、字母、下划线。
  3. 语句以分号结束。
  4. 变量名区分大小写。

3.2 两个对象指向同一个值

$b = &$a;
则b与a指向同一个内存对象

在这里插入图片描述

3.3 可变变量

$$name就相当于$world

在这里插入图片描述

4.变量的作用域

通过global一个方法中引入外部变量
在这里插入图片描述
或者
在这里插入图片描述

5. 检测变量

isset()函数判断变量是否存在,初始化。
unset()删除变量。

6. 布尔类型

  1. 0与0.0为假,而其他数字比如12为true
    在这里插入图片描述
    在这里插入图片描述
  2. 空的字符串也是假,有值的字符串为真
    在这里插入图片描述
    在这里插入图片描述
    3.空数组也为假,null 也为假在这里插入图片描述

7.字符串定义与转义

双引号可以包变量
在这里插入图片描述

转义符

在 PHP 中,常见的转义字符包括:

\":双引号
\':单引号
\\:反斜杠
\n:换行
\r:回车
\t:制表符
\v:垂直制表符
\f:换页符
\$:美元符号
\0:空字符

8.字符串常用函数

strlen() 获取字符串的长度
trim() 删除  

9.常量

define('NAME','海绵宝宝');
echo NAME;

const URL = 'www.baidu.com';

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HarmonyOS入门学习

HarmonyOS入门学习 前言快速入门ArkTS组件基础组件Image组件Text组件TextInput 文本输入框Buttonslider 滑动组件 页面布局循环控制ForEach循环创建组件 List自定义组件创建自定义组件Builder 自定义函数 状态管理Prop和LinkProvide和ConsumeObjectLink和Observed ArkUI页面路由…

【网络安全】CobaltStrike 使用

本文章仅用于信息安全学习,请遵守相关法律法规,严禁用于非法途径。若读者因此作出任何危害网络安全的行为,后果自负,与作者无关。 Cobalt Strike是一款渗透测试神器,Cobalt Strike已经不再使用MSF而是作为单独的平台使…

如何避免OKR成为形式主义,真正发挥其作用?

OKR(Objectives and Key Results)作为一种目标管理方法,旨在通过设定明确的目标和可衡量的关键成果,帮助企业实现高效、精准的管理。然而,在实际应用中,许多企业却陷入了形式主义的泥潭,使OKR失…

1.什么是exchange的自签名证书?安装exchange后,默认生成的证书介绍?如何查看exchange的证书情况?命令是?

目录 1.exchange的自签名证介绍 2.如何查看exchange的证书? 3.默认生成证书介绍 第一张:Microsoft Exchange 第二张:Microsoft Exchange Server Auth Certificate 第三张:WMSVC 总结: 1.exchange的自签名证介绍…

JAVA 获取系统当前时间、时间格式互相转化工具类,2024百度Java岗面试真题收录解析

DateTimeFormatter ftf DateTimeFormatter.ofPattern(“yyyy-MM-dd HH:mm:ss”); LocalDateTime parse LocalDateTime.parse(strTime, ftf); return LocalDateTime.from(parse).atZone(ZoneId.systemDefault()).toInstant().toEpochMilli(); } //通过LocalDateTime获取当…

CPP容器vector和list,priority_queue定义比较器

#include <iostream> #include <bits/stdc.h> using namespace std; struct VecCmp{bool operator()(int& a,int& b){return a>b;/*** 对于vector和list容器&#xff0c;这里写了&#xff1e;就是从大到小* 对于priority_queue容器&#xff0c;这里写…

YOLO改进模块出现的问题及改进方法

1.grid_sampler_2d_backward_cuda 在对YOLOv9进行改进的过程中&#xff0c;有的时候就会出现这种报错&#xff1a;RuntimeError: grid_sampler_2d_backward_cuda does not have a deterministic implementation&#xff0c;but you set torch.use_deterministic_algorithms(Tr…

【SpringSecurity】十七、OAuth2授权服务器 + 资源服务器Demo

文章目录 0、库表准备1、项目结构2、基于数据库的认证3、授权服务器配置4、授权服务器效果测试5、资源服务器配置6、其他授权模式测试6.1 密码模式6.2 简化模式6.3 客户端模式6.4 refresh_token模式 相关&#x1f4d5;&#xff1a;【Spring Security Oauth2 配置理论部分】 0、…

[C#]winformYOLO区域检测任意形状区域绘制射线算法实现

【简单介绍】 Winform OpenCVSharp YOLO区域检测与任意形状区域射线绘制算法实现 在现代安全监控系统中&#xff0c;区域检测是一项至关重要的功能。通过使用Winform结合OpenCVSharp库&#xff0c;并结合YOLO&#xff08;You Only Look Once&#xff09;算法&#xff0c;我们…

Docker之docker compose!!!!

一、概述 是 Docker 官方提供的一款开源工具&#xff0c;主要用于简化在单个主机上定义和运行多容器 Docker 应用的过程。它的核心作用是容器编排&#xff0c;使得开发者能够在一个统一的环境中以声明式的方式管理多容器应用的服务及其依赖关系。 也就是说Docker Compose是一个…

利用Jmeter工具对服务器,数据库进行性能监控,压测,导出性能测试报告

Jmeter是Apache基金会旗下的一款免费,开源,轻量级的性能测试工具,主要针对web应用程序客户端/服务器进行性能测试.它可以分别测试静态、动态资源(Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等),它可以通过线程组来模拟数个用户,在一段时间内同时登录服务器,数个用…

MySQL的基础操作与管理

一.MySQL数据库基本操作知识&#xff1a; 1.SQL语句&#xff1a; 关系型数据库&#xff0c;都是使用SQL语句来管理数据库中的数据。 SQL&#xff0c;即结构化查询语言(Structured Query Language) 。 SQL语句用于维护管理数据库&#xff0c;包括数据查询、数据更新、访问控…

【机器学习】基于蝴蝶算法优化的BP神经网络分类预测(BOA-BP)

目录 1.原理与思路2.设计与实现3.结果预测4.代码获取 1.原理与思路 【智能算法应用】智能算法优化BP神经网络思路【智能算法】蝴蝶优化算法&#xff08;BOA)原理及实现 2.设计与实现 数据集&#xff1a; 数据集样本总数2000 多输入多输出&#xff1a;样本特征24&#xff0c…

WAF是什么意思?waf防火墙部署方式

防火墙中的WAF是什么意思&#xff1f;WAF是Web Application Firewall的简称&#xff0c;即Web应用防火墙&#xff08;也称网站应用级入侵防御系统&#xff09;一种专门为Web应用提供保护的网络安全设备&#xff0c;工作在应用层&#xff0c;通过执行一系列针对HTTP/HTTPS的安全…

GraalVM详细安装及打包springboot、java、javafx使用教程(打包普通JAVA项目篇)

前言 在当前多元化开发环境下&#xff0c;Java作为一种广泛应用的编程语言&#xff0c;其应用部署效率与灵活性的重要性日益凸显。Spring Boot框架以其简洁的配置和强大的功能深受开发者喜爱&#xff0c;而JavaFX则为开发者提供了构建丰富桌面客户端应用的能力。然而&#xff…

硬盘、内存、缓存(CPU)和寄存器 空间大小与存取速度的区别及设计原理

一、寄存器和存储器是不同的 很多人会将 寄存器 与 存储器 二者混淆&#xff0c;认为它们是同一个东西。但并不是&#xff01;&#xff01; 寄存器是CPU上的一个模块 存储器是 内存硬盘的统称 二、存取速度的比较 CPU(包含寄存器&#xff0c;缓存) > 内存 > 硬盘 内…

Monoxer Programming Contest 2024(AtCoder Beginner Contest 345)(A,B,C,D,E,F)

比赛链接 这场。。。好像已经是一周之前的比赛来着&#xff0c;终于补完了。 C是个披着字符串外衣的数学容斥题。D是个超级超级暴力的爆搜&#xff0c;写起来超级麻烦&#xff0c;感觉。。。真是一次酣畅淋漓的赤石。E是个DP&#xff0c;朴素想法其实比较直观&#xff0c;不过…

C# 右键快捷菜单(上下文菜单)的两种实现方式

在C#中&#xff0c;ContextMenuStrip是一种用于创建右键菜单的控件。它提供了一种方便的方式来为特定的控件或窗体添加自定义的上下文菜单选项。有两种实现方式&#xff0c;如下&#xff1a; 一.通过ContextMenuStrip控件实现 1.从工具箱中拖一个ContextMenuStrip控件到窗体上…

银行量子金融系统应用架构设计

量子金融&#xff08;即Financial-Quantum&#xff0c;简称Fin-Q&#xff09;&#xff0c;特指量子科技在金融行业中的应用。 目前&#xff0c;量子科技中以量子保密通信、量子随机数和量子计算发展进度较快&#xff0c;取得了诸多阶段性重大技术突破和商用成果&#xff0c;这…

vue学习日记13:记账清单,渲染添加删除

一.需求说明 二、实践 1.基本渲染 &#xff08;1&#xff09;代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" …