第一章: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. SVG和canvas的区别

    1.Canvas 是用JavaScript 操作动态生成的, SVG 则是使用XML静态描述生成的; 2.Canvas 基于位图,简单来说就是图片放大会影响到显示的效果,造成不好的影响,SVG 基于矢 ...

  2. Python中令人迷惑的4个引用

    第一个:执行时机的差异 1. array = [1, 8, 15] g = (x for x in array if array.count(x) > 0) array = [2, 8, 22] ...

  3. Vulnhub_DC7 记录

    基本步骤 经验 & 总结 对信息还是不敏感,其实也是因为对Drupal这个CMS并不熟悉,不知道哪些地方是默认的那些地方是作者修改,比如这个"DC7USER". 对Drup ...

  4. 解析-analysis

    解析-analysis 1.      解析-analysis 可以理解为分词. 解析由解析器——analyzer执行,解析器包括内置和用户自定义两种. 1.1.    解析器 1.1.1.   内置 ...

  5. idea 导入svn中java WEB项目

    1.打开idea 2.填写svn路径 3.指定本地路径 4.选择1.8 format 5.添加jdk 6.配置tomcat启动项目 File -- Project Structure

  6. SpringMVC 配置文件详解

    HandlerMapping    处理器映射 HTTP请求被DispatcherServlet拦截后,会调用HandlerMapping来处理,HandlerMapping根据 url<=&g ...

  7. php 算法知识 冒泡排序

    function bubble_order($arr){ //得到长度 $count_num=count($arr); for($k=1;$k<$count_num;$k++){ //对长度越来 ...

  8. RuntimeError: cuda runtime error (10) : invalid device ordinal

    This is caused by the unmatching of gpu device number when loading a saved model. torch.load('my_fil ...

  9. 吴裕雄--天生自然PythonDjangoWeb企业开发:学员管理系统- 前台

    开发首页 做一个简单的用户提交申请的表单页面. 首先在student/views.py文件中编写下面的代码: # -*- coding: utf-8 -*- from __future__ impor ...

  10. 2019年5月6日A股两百点暴跌行情思考

    原因:特朗普推特发布贸易战消息 盘面:跳空低开,单边下跌,上证指数最大跌幅200点,收盘千股跌停 操作:开盘加仓,盘中加仓,尾盘满仓 总结: 特大黑天鹅事件爆发引发大盘暴跌时,后续必将迎来一个反弹机会 ...