第一章:PHP基础语法

一.常量:

1.1.define()函数:define(‘R’,’5’,’true’); //R:常量名,5:常量值,true:常量名对大小写不敏感,为false时表示对常量名敏感。

1.2 const关键字:const关键字在定义常量时,只需要在后面跟上一个常量名称。

并且使用“=”赋值。Const R=6;

phpinfo();

//phpinfo是一个函数(功能),这个函数(功能)会显示一个当前电脑(服务器)的详细的PHP信息

二.变量:

变量的几个特点:

1.x = 5 将右边值5,赋值给左边的x

2.第二段x = 12,最后x + y 的结果等于20,说明x在从上到下的运算(执行)中,可以被重新赋值。

我们在PHP中的变量也是如此。不过有几个特点:

1.必须要以$开始。如变量x必须要写成$x

2.变量的首字母不能以数字开始

3.变量的名字区分大小写

4.变量不要用特殊符号、中文,_不算特殊符号

5.变量命名要有意义(别写xxx,aaa,ccc这种 变量名)

错误举列:

错误:变量以数字开始

<?php

$123 = 345;

?>

错误:变量中有特殊字符,中文

<?php

//$a*d = 345;

//$中国 = 123;

?>

错误:变量命名没有意义aaa容易数错,也没有含意

<?php

$aaaaaaa = 345;

?>

错误:变量严格区分大小写 $dog 和 $Dog是PHP学院的变量,尝试将$dog的值改为8.结果D写成了大写。

<?php

$dog = 5;

//重新修改$dog的值,将$dog改为8

$Dog = 8;

?>

正确举例:

正确:变量不能以数字开始,但是数字可以夹在变量名中间和结尾

<?php

$iphone6 = 5880;

$iphone6plus = 6088;

?>

正确:变量不能有特殊符号,但是_(下划线不算特殊符号)

<?php

$_cup = 123;

?>

注:你会发现代码是从上向下执行的。

$ 叫作美元符,英文单词:dollar。PHP的变量必须以美元符开始。说明搞PHP有“钱”途。

dollar
读音:['dɒlə(r)]
解释:美元

三、PHP数据类型-------字符串:

在PHP语言中声明字符串有三种方式:

1.用单引号声明(用英文半脚的单引号,将字符串包起来)

2.用双引号声明(在字符串两边加双引号。)

3.用字界符声明(需要输入非常大段的字符串时使用)

字界符声明
1).在变量后面的等号写三个小于号(<<<)。
2).然后在<<<后面写上字符(建议英文大写字符)。如下例中的:ABC
3).然后换行写上任意想写的字符
4).写完后,顶行。在行最开始处,再写上<<<后面的字符和分号。如下例中的:ABC;

<?php

$dingjie = <<<ABC

那双引号和单引号有什么区别呢?

【重要知识点】PHP面试题中,高概率面试题(建议背诵并实验三遍以上)

1.双引号解析变量,但是单引号不解析变量。

2.在双引号里面插入变量,变量后面如果有英文或中文字符,它会把这个字符和变量拼接起来,视为一整个变量。一定要在变量后面接上特殊字符,例如空格等分开。

3.如果在双引号里面插变量的时候,后面不想有空格,可以拿大括号将变量包起来。

4.双引号解析转义字符,单引号不解析转义字符。但,单引号能解析\' 和\  (双引号中最常用的:\n 回车     \t 缩进)

5.单引号效率高于双引号,尽可能使用单引号

转义字符反斜线的使用(\

6.双号和单引号可以互插!!!双引号当中插入单引号,单引号当中插入变量,这个变量会被解析。

7.神奇的字符串拼接胶水——(.)点,用来拼接字符串。

8.我们将定界符声明字符串视为双引号一样的功能来看待。

单引号插入变量:

双引号插入变量:

四、 php数据类型之浮点型

Var_dump()是一个函数,向括号()中间插入变量,这个函数,会打印出来数据类型

还会对应显示变量的长度和值。

五. php流程控制之if else语法

四种基本语法:

五.1&五.2

<?php

if(布尔条件)

布尔值为真(true)时执行,只能写一行代码;

?>

<?php

if(布尔条件)

布尔值为真(true)时执行,只能写一行代码;

else

布尔值为假(false)时执行,只能写一行代码;

?>

五.3&五.4

<?php

if(布尔条件){

布尔值为真(true)时执行,可写多行代码;

}

?>

<?php

if(布尔条件){

布尔值为真(true)时执行,可写多行代码;

}else{

布尔值为假(false)时执行,可写多行代码;

}

?>

六.PHP数据类型之NULL类型、

六.1产生NULL类型的三种情况:

   *通过变量赋值明确指定为变量的值为NULL

   *一个变量没有给任何值

   *使用函数unset()将变量销毁

六.2empty()函数和isset()函数的区别:

empty()函数可以向括号中间传入一个变量。这个变量的值如果是false或者为null,则返回true

Isset()可以向括号中间传入一个或多个变量,变量与变量间用逗号分开。只要有一个

变量为null,则返回false,否则返回true。

Unset()函数的功能是毁掉变量。Unset(变量)括号中间插入想要毁掉的变量名,

这个变量就会被毁掉!

七.PHP数据类型之数组:

<?php

//定义$shu这个变量

//数组声明是向array里面插入一个或者多个值

//一个或者多个值用逗号分开

$shu = array(1,2,3);

?>

八.PHP数据类型之查看和判断数据类型

八.1查看数据类型

1.gettype(传入一个变量)能够获得变量的类型

2.var_dump(传入一个变量)能够输出一个变量的类型

八.2判断数据类型

is_int//是否为整型

is_bool//是否为布尔

is_float//是否为浮点

is_string//是否为字符串

is_array//是否为数组

is_object//是否为对象

is_null//是否为空

is_resource//是否为资源

is_scalar//是否为标量

is_numberic//是否为数值类型

is_callable//是否为函数

九.PHP数据类型之自动转换和强制转换

九.1布尔值的自动类型转换

条件:

  1. 整型的0为假,其他整型值全为真
  2. 浮点的0.0,布尔值的假,小数点后只要有一个非零的数值即为真
  3. 空字符串为假,只要里面有一个空格都算真
  4. 字符串的0,也将其看作是假,其他的都为真。
  5. 空数组也将其视为假,只要里面有一个值。就为真
  6. 空也为假
  7. 未声明成功的资源也为假

总结:

布尔值的true参与运算是会变成整型或是浮点的1,布尔值的false参与运算是会变成整型或者浮点的0。

字符串开始处是整型或浮点类型的字符,会转成对应的类型参与运算。

九.2强制类型转换的三种方式:

  1. 用后面的三个函数可以完成类型转换,intval()、floatval()、strval()、

         

2.变量前加上()里面写上类型,将它转换后赋值给其他变量

3.Settype(变量,类型)直接改变量本身(settype中第二个参数是要转换的数据类型,要用放在单引号里作为字符串类型)

                                 

 

九.3强制类型转换时的特点:

  1. 空转为整型会为整型的0

2.空转为浮点会为浮点的0

3.空转为字符串会为空字符串‘’

4.浮点的123.0转为字符串会为字符串123

5.浮点的123.2转为字符串会为字符串的123.2

6.浮点即使小数点再大,它都会被干掉,会舍掉小数点后面的值

7.如果字符串转为整型的时候,如果数值在前面,会将前面的数值拿出来做为整型的转换值。

8.settype(变量,'null'); 等价于 unset()一个变量

9.$目标变量 = (类型)$操作变量 只会改变目标变量的类型,不会改变原变量的类型,Settype是改变原值

回顾PHP:第一章:PHP基础语法的更多相关文章

  1. web前端学习python之第一章_基础语法(二)

    web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...

  2. web前端学习python之第一章_基础语法(一)

    web前端学习python之第一章_基础语法(一) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...

  3. 第一章 –– Java基础语法

    第一章 –– Java基础语法 span::selection, .CodeMirror-line > span > span::selection { background: #d7d4 ...

  4. 第一章JSP基础语法

    jsp页面元素构成 jsp页面组成部分有:指令,注释,静态内容,表达式,小脚本,声明. jsp指令 page指令:通常位于jsp页面的顶端,同一个页面可以有多个page指令 include指令:将一个 ...

  5. go基础系列 第一章 go基础语法

    0.前言 1. go定义变量的几种方式 2. go内建变量类型 3. 常量的定义 4. go枚举 5. go的if语句 零. go语言的换行 go语言对换行很有讲究, 如果想换行,必须有一个逗号, 否 ...

  6. java面向对象编程——第二章 java基础语法

    第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...

  7. 第一章 jQuery基础

    第一章jQuery基础 一.jQuert简介 1.什么是jQuery jQuery是javaScript的程序库之一,它是javaScript对象和实用函数的封装. jQuery是继Prototype ...

  8. python第一章计算机基础

    第一章 计算机基础 1.1 硬件 计算机基本的硬件由:CPU / 内存 / 主板 / 硬盘 / 网卡 / 显卡 / 显示器 等组成,只有硬件但硬件之间无法进行交流和通信. 1.2 操作系统 操作系统用 ...

  9. 《零成本实现Web自动化测试--基于Selenium》第一章 自动化测试基础

    第一篇 Selenium 和WebDriver工具篇 第一章 自动化测试基础 1.1    初识自动化测试 自动化测试有两种常见方式 1.1.1 代码驱动测试,又叫测试驱动开发(TDD) 1.1.2 ...

  10. [Python笔记][第一章Python基础]

    2016/1/27学习内容 第一章 Python基础 Python内置函数 见Python内置函数.md del命令 显式删除操作,列表中也可以使用. 基本输入输出 input() 读入进来永远是字符 ...

随机推荐

  1. Vue——路由回退至指定页面

    先来引出一下遇到的问题:在做一个移动端支付页面,在付款页面点击支付按钮,支付失败时跳转至支付失败提示页面:支付成功时跳转至支付成功页面.在支付成功页面下,如果用户点击手机自带的“返回”键,就又会跳转至 ...

  2. SqlServer游标操作

    CLOSE orderNum_02_cursordeallocate orderNum_02_cursorDECLARE orderNum_02_cursor cursor SCROLL for se ...

  3. java编译问题之Description Resource Path Location Type Java compiler level does not match the version of

    project 编译问题,需要三处的jdk版本要保持一致,才能编译通过. 1.在项目上右键properties->project Facets->修改右侧的version  保持一致 2. ...

  4. 安装插件报错error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++

    起因:学到多线程greenlet模块时,greenlet模块死活装不上,以为pycharm坏掉了,浪费了一下午. #pip3 install greenlet from greenlet import ...

  5. mysql yum源安装极速

    mysql yum源地址:https://dev.mysql.com/downloads/repo/yum/ 随便找个最新的不管你是要装任何个历史版本他都可以,后面我会介绍: 安装第一步预置环境清理: ...

  6. php 基础 PHP保留两位小数的几种方法

    $num = 10.4567; //第一种:利用round()对浮点数进行四舍五入 echo round($num,2); //10.46 //第二种:利用sprintf格式化字符串 $format_ ...

  7. Write-up-Violator

    关于 下载地址:点我 Flag:/root/flag.txt 哔哩哔哩:视频 信息收集 网卡:虚拟机vmnet8 ➜ ~ ip addr show dev vmnet8 5: vmnet8: < ...

  8. 关于热部署Devtools出现同一个类型进行类型转换失败的问题

    背景: 最近在和学长们做一个小系统,在进行任务调度的设置的时候会出现类型转换失败的错误,原本是同一个类型的,不应该出现类型转换失败的问题,起初以为是序列化的问题,回来发现并不是这个原因, 报错截图: ...

  9. Java基础知识笔记第五章:子类与继承

    子类与父类 子类 class 子类名 extends 父类名{ ....... } 类的树形结构 子类的继承性 子类和父类在同一包中的继承性 子类继承了父类不是private的成员属性和成员方法   ...

  10. PPT页面切换动画

    想要自己的PPT更加炫酷一些的话,可以再给每个页面的切换,加上动画效果. 第一步,按住ctrl键,鼠标点击选择想要增加切换动画的页面,然后点击菜单栏的“切换” 第二步,在切换菜单下面选择具体的切换效果 ...