PHP 部分语法(一)
PHP:
PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言,它以 <?php 开始,并以 ?> 结束;
它还是一门弱类型语言,类型不需显式声明
变量:
PHP 没有声明变量的命令,在第一次赋值给它的时候创建
变量规则:
1、以 $ 开始,后面跟着变量的名称
2、只能包含数字、字母和下划线,且必须以字母或下划线开始
3、区分大小写
变量作用域:local、global、static 和 parameter
所有函数外定义的变量拥有全局作用域,除函数外,全局变量可被脚本中的任一部分访问,函数应通过 global 来访问全局变量
$x = 1;
function test_one() {
// 由于函数无法直接访问全局变量,所以输出为空
echo "<p>变量 x 的值为:$x</p>";
} function test_two() {
global $x;
// 输出为 1
echo "<p>变量 x 的值为:$x</p>";
}
注:PHP 将所有全局变量储存在 $GLOBALS[index] 数组中,index 为变量名,可通过该数组访问或修改全局变量
可通过 static 声明一个局部变量,使其在函数调用结束后不被删除,每次调用函数,static 变量都保存了上一次的值
echo 和 print 的区别:
echo:可输出一个或多个字符串,且没有返回值
print:只允许输出一个字符串,且返回值总是 1
类型:
String(字符串)、Integer(整数)、Float(浮点数)、Boolean(布尔型)、
Array(数组)、Object(对象)、NULL(空值)
var_dump() 返回变量的类型和值
== 只比较值,不比较类型;=== 值和类型都比较
<> 表示不等于,等价于 !=
1 == "1"; // 返回 true
1 === "1"; // 返回 false
bool define(string $name, mixed $value[, bool $case_insensitive = false]) 定义常量;name 为常量名字,value 为值,
case_insensitive 默认大小写敏感;默认为全局,可在运行脚本的任一位置使用,包括函数
PHP 只有一个字符串运算符,即并置运算符 "." 连接字符串
字符串方法:
1、strlen():获取字符串长度
2、strpos():查找一个字符或指定文本,再返回其位置下标或 False
strlen("中文字符"); // 返回 12,因为一个中文占 3 个字符数
strpos("Hello World", "World"); // 返回 6
3、mb_strlen() 和 mb_strpos():可指定编码格式,从而解决类似上面中文输出出错问题
mb_strlen("中文字符", "UTF-8"); //
逻辑运算:
1、and、&&、or、||、xor、!
$a = 2;
$b = 3;
// 以下均输出为真,xor 为异或
echo $a and $b, $a && $b, $a or $b;
echo $a || $b, $a xor !$b, $a || !$b;
2、(expr1) ? (expr2) : (expr3)
$a = 2;
$b = 3;
$a > $b ? $str = "$a > $b" : $str = "$a <= $b";
echo $str; // 输出 2 <= 3
// 输出 2 < 3
if ($a > $b)
echo "$a > $b";
elseif ($a === $b)
echo "$a === $b";
else
echo "$a < $b";
注:PHP 7+ 支持 $a <=> $b,当 $a > $b 时返回 1,$a = $b 时返回 0,$a < $b 时返回 -1
PHP 的分支结构为 if...elseif...else
PHP 部分语法(一)的更多相关文章
- 我的MYSQL学习心得(一) 简单语法
我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- Swift与C#的基础语法比较
背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...
- 探索C#之6.0语法糖剖析
阅读目录: 自动属性默认初始化 自动只读属性默认初始化 表达式为主体的函数 表达式为主体的属性(赋值) 静态类导入 Null条件运算符 字符串格式化 索引初始化 异常过滤器when catch和fin ...
- [C#] 回眸 C# 的前世今生 - 见证 C# 6.0 的新语法特性
回眸 C# 的前世今生 - 见证 C# 6.0 的新语法特性 序 目前最新的版本是 C# 7.0,VS 的最新版本为 Visual Studio 2017 RC,两者都尚未进入正式阶段.C# 6.0 ...
- Velocity初探小结--velocity使用语法详解
做java开发的朋友一般对JSP是比较熟悉的,大部分人第一次学习开发View层都是使用JSP来进行页面渲染的,我们都知道JSP是可以嵌入java代码的,在远古时代,java程序员甚至在一个jsp页面上 ...
- node.js学习(二)--Node.js控制台(REPL)&&Node.js的基础和语法
1.1.2 Node.js控制台(REPL) Node.js也有自己的虚拟的运行环境:REPL. 我们可以使用它来执行任何的Node.js或者javascript代码.还可以引入模块和使用文件系统. ...
- C#语法糖大汇总
首先需要声明的是"语法糖"这个词绝非贬义词,它可以给我带来方便,是一种便捷的写法,编译器会帮我们做转换:而且可以提高开发编码的效率,在性能上也不会带来损失.这让java开发人员羡慕 ...
- 值得注意的ibatis动态sql语法格式
一.Ibatis常用动态sql语法,简单粗暴用一例子 <select id="iBatisSelectList" parameterClass="java.util ...
- Flex 布局教程:语法篇
作者: 阮一峰 网页布局(layout)是CSS的一个重点应用. 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性.它对于那些特殊布局非常不方便 ...
- postgresql 基本语法
postgresql数据库创建/修改/删除等写入类代码语法总结: 1,创建库 2,创建/删除表 2.1 创建表 create table myTableName 2.2 如果表不存在则创建表 crea ...
随机推荐
- Linux Zookeeper 安装, 带视频
疯狂创客圈 Java 高并发[ 亿级流量聊天室实战]实战系列 [博客园总入口 ] 面试必备+面试必备之 高并发基础书籍 [Netty Zookeeper Redis 高并发实战 ] 疯狂创客圈 高并发 ...
- js实现常见排序算法
电脑配置 CPU:AMD X4 640 内存: 宏想 DDR3 1600MHz 8g 主板:华擎 980DE3/U3S3 R2.0 浏览器:chrome 79.0.3945.88(正式版本) (64 ...
- Java DAO 模式
转载自https://www.runoob.com/note/27029 DAO 模式 DAO (DataAccessobjects 数据存取对象)是指位于业务逻辑和持久化数据之间实现对持久化数据的访 ...
- 如何判断IE OCX插件正常安装?
项目中用到了一个第三方的ie ocx控件,而经常遇到客户和测试小伙伴反馈相关功能无法正常使用,也没有友好提示.考虑到这个问题,必须要有一个ie ocx控件的检查机制. 检查原理 创建ActiveXOb ...
- Java每日一面(Part2数据库)[19/11/28]
作者:故事我忘了¢个人微信公众号:程序猿的月光宝盒 1.如何设计一个关系型数据库 如上图,首先划分成两大部分: 1.存储部分:类似一个文件系统,把数据存储到一个持久化设备中,如机械硬盘,固态等 ...
- GTID复制的工作原理
参考自:https://dev.mysql.com/doc/refman/5.7/en/replication-gtids-lifecycle.html 笔记说明: 本文翻译自官网,当然会根据语义做一 ...
- unittest---unittest跳过用例
我们在做自动化测试的时候,可能会遇到一些用例中间不用回归,想要进行跳过.直接注释的话,代码量修改过大,显然这个方法不妥,哪还有什么方法?unittest这个自动化框架可以帮助我们完成这个操作 自动跳过 ...
- 14. java面向对象 - 基础
一.面向对象主线 1. Java类及类的成员:属性.方法.构造器.代码块.内部类 2. 面向对象三大特征:封装.继承.多态.(抽象性) 3. 其他关键字:this.super.static.final ...
- Violet 6 杯省选模拟赛 蒲公英
https://www.luogu.com.cn/problem/P4168 题目 给$n$个数字,有$m$次询问,问$a_l, a_{l+1} , \dots , a_r$的众数是什么, $1\le ...
- linux用户组相关,密码相关,文件操作,和启动级别
一.开机重启和用户切换 注意,当关机或重启前,都应当先执行一下sync指令,把内存的数据写入磁盘,防止数据丢失. shutdown命令 shutdown -h now :立即关机 shutdown - ...