【风马一族_php】PHP运算
运算
- 算术运算符
<?php //加法
$num1 = 10;
$num2 = 43; echo $num1 + $num2;
echo " ";
var_dump($num1 + $num2);
echo "<p />";
?> 结果 : 53 int(53)php--加法
<?php //加法
$num1 = 10;
$num2 = 43; echo $num1 - $num2;
echo " ";
var_dump($num1 - $num2);
echo "<p />";
?> 结果: -33 int(-33)php--减法
<?php //加法
$num1 = 10;
$num2 = 43; echo $num1 * $num2;
echo " ";
var_dump($num1 * $num2);
echo "<p />";
?> 430 int(430)php--乘法
<?php //加法
$num1 = 10;
$num2 = 43; echo $num1 / $num2;
echo " ";
var_dump($num1 / $num2);
echo "<p />";
?> 结果:0.23255813953488 float(0.23255813953488)php--除法
<?php //加法
$num1 = 10;
$num2 = 43; echo $num1 % $num2;
echo " ";
var_dump($num1 % $num2);
echo "<p />";
?> 结果: 10 int(10)php--求余
- 赋值运算符
<?php //赋值
$num =35; echo $num;
?> 结果: 35php--赋值
<?php //赋值
$num =35; $num += $num; echo $num;
?> 结果 : 70php--左边加右边-赋值给左边
<?php //赋值
$num =35; $num -= $num; echo $num;
?> 结果: 0php--左边减右边-赋值给左边
<?php //赋值
$num =35; $num *= $num; echo $num;
?> 结果: 1225php--左边乘右边-赋值给左边
<?php //赋值
$num =35; $num /= $num; echo $num;
?> 结果: 1php--左边除右边-赋值给左边
<?php //赋值
$num =35; $num %= $num; echo $num;
?> 结果: 0php--左边求余右边-赋值给左边
<?php //字符串连接
$num =35; $num .= $num; echo $num;
?> 结果: 3535php--字符串连接
- 逻辑运算符
<?php $true = true;
$false =false; // 与 && 逻辑运算符
var_dump($true && $true);
var_dump($true && $false);
var_dump($false && $false); ?> 结果:bool(true) bool(false) bool(false)php--&&-与
<?php $true = true;
$false =false; // 或 || 逻辑运算符
var_dump($true || $true);
var_dump($true || $false);
var_dump($false || $false); ?> 结果: bool(true) bool(true) bool(false)php--||-或
<?php $true = true;
$false =false; // 非 ! 逻辑运算符
var_dump(!$true);
var_dump(!$false); ?> 结果: bool(false) bool(true)php--!-非
- 比较运算符
<?php $num1 ="10";
$num2 =10; // 两个变量的值 是否相同
var_dump($num1==$num2); $num3 =10;
$num4=10; // 两个变量的值 是否相同
var_dump($num3==$num4);
?> 结果: bool(true) bool(true)php--==-两个变量的值是否相同
<?php $num1 ="10";
$num2 =10; // 两个变量的值、类型 是否相同
var_dump($num1===$num2); $num3 =10;
$num4=10; // 两个变量的值、类型 是否相同
var_dump($num3===$num4);
?> 结果: bool(false) bool(true)php--===-两个变量的值、类型是否相同
<?php $num1 =65;
$num2 =10; // 左边的类型 是否大于 右边的类型
var_dump($num1>$num2); ?> 结果 : bool(true)php-->-左边的类型是否大于右边的类型
<?php $num1 =65;
$num2 =10; // 左边的类型 是否小于 右边的类型
var_dump($num1<$num2); ?> 结果 : bool(false)php--<-左边的类型是否小于右边的类型
<?php $num1 =60;
$num2 =10; // 左边 是否大于等于 右边
var_dump($num1>=$num2); ?> 结果: bool(true)php-->=-左边是否大于等于右边
<?php $num1 =60;
$num2 =10; // 左边 是否小于等于 右边
var_dump($num1<=$num2); ?> 结果: bool(false)php--<=-左边是否小于等于右边
<?php $num1 ="10";
$num2 =10; // 左边的值 是否不等于 右边的值
var_dump($num1!=$num2); ?> 结果 : bool(false)php--!=左边的值是否不等于右边的值
<?php $num1 ="10";
$num2 =10; // 左边的类型 是否不等于 右边的类型
var_dump($num1!==$num2); ?> 结果: bool(true)php--!==-左边的类型是否不等于右边的类型
- 错误抑制符
- 作用:将错误的内容,不提示出来
- 符号:@
- 用法:在引发错误的语句中,语句前加入@
- 效果:错误提示,不会显示到浏览器中
- 例子:
- 三元运算符
- 作用:判断语句,满足条件,就选择1;不满足条件,就选择2
- 符号: ? :
- 用法: 判断语句 ? 第一种结果:第二种结果
- 替代:可以替代简单的if/else
- 例子
- 自操作运算符
- 作用:自己操作自己的运算符
- 符号:
- 前置 ++ --
- 例子 ++num --num
- 后置 ++ --
- 例子 num++ num--
- 前置 ++ --
- 用途:循环语句,进行次数变化、变量增减
- 例子
<?php $num1=10;
$num2=10;
$num3=10;
$num4=10; //前置 ++
echo ++$num1." ";
echo ++$num1."<br/>"; //后置 ++
echo $num2++." ";
echo $num2++."<br/>"; //前置 --
echo --$num3." ";
echo --$num3."<br/>"; //后置 --
echo $num4--." ";
echo $num4--." "; ?> 结果:
11 12
10 11
9 8
10 9php--自操作运算符
- 字符串连接符
- 作用:连接字符串
- 符号: . .=
- . : 一个点将左边与右边连接在一起
- .= : 一个点将左边与右边连接在一起,并把结果赋值给左边
- 例子
<?php $str1 ="You are ";
$str2 ="sows"; echo $str1.$str2; ?>php--字符串的连接符
<?php $str1 ="You are ";
$str2 ="sows"; //用一个点,$str1与$str2连接在一起
$sum = $str1.$str2;
echo $sum;
echo "<br />";
echo $str1;
echo "<hr />"; //用 .= , $str1与str2连接在一起,并将结果赋给$str1
$str1.=$str2;
echo $str1;
?> 结果:
You are sows
You are
--------------------------------------------
You are sowsphp--.=-左边与右边连接在一起,并赋给左边
- 位运算符
- 作用:对系统硬盘上存储的位进行操作(实际操作是字节为单位),位运算在计算过程中,每个位的操作返回结果都是1或者0
- 符号:&、|、~、^、>>、<<
- & : 按位与 ,表示两个位都为1时,则返回1,否则返回0
- 例子: 1&1 --> 1 1&0-->0
- | :按位或 ,表示两个位中至少一个是1时,则返回1,否则返回0
- 例子: 1|0 --> 1
- ~:按位非(反码) ,表示一个十进制的数用二进制表示,然后0变1,1变0,再转化成十进制的数字
- 例子: ~0 --> -1 ~-1 --> 0
~1 --> -2 ~-2 --> 1
~2 --> -3 ~-3 --> 2
~3 --> -4 ~-4 --> 3
- 例子: ~0 --> -1 ~-1 --> 0
- ^: 按位异或,表示两个位的值不同时,则返回1,否则返回0
- 例子:1^0 -->1 1^1 -->0 0^0 -->1
- <<:按位左移,表示将整个字节向左移动,右边空出来的位用0补充
- 规则:a<<b
- 结果:a*(2的b次方)
- >>:按位右移,表示将整个字节向右移动,左边空出来的位用0补充
- 规则:a>>b
- 结果:a/(2的b次方)
- & : 按位与 ,表示两个位都为1时,则返回1,否则返回0
- 码
- 数值在系统内部(磁盘上的存储)
- 0: 0000 0000
- -0:1000 0000
- 系统在存储的时候,不是按照原来的二进制直接存储,而是进行转化后的补码形式进行存储
- 原码:一个十进制数转化成二进制数
- 反码:将原码按位取反,得到的二进制数
- 补码:在反码基础上加1,得到的二进制数
- 注意:正数的原码=反码=补码
- 例子
- //二进制的最左边的位:0表示正数
1
原码:0000 0000 0000 0001
反码:0000 0000 0000 0001
补码:0000 0000 0000 0001//二进制的最左边的位:1表示负数
-1
原码:1000 0000 0000 0001
反码:0111 1111 1111 1110
补码:0111 1111 1111 1111
- //二进制的最左边的位:0表示正数
- 数值在系统内部(磁盘上的存储)
PHP代码的执行原理
1. PHP有一种专门来解释PHP语言的工具,叫做Zend引擎(zend引擎
2. 当php代码是嵌入到html代码中的时候的工作原理
流程控制
表达式:凡是有值返回的结构(语句)都可以称之为表达式
- 所有的值本身都可以是表达式
- 所有的运算符运算的结果也都是表达式
顺序结构
代码从上到下的顺序执行
例如:$a = 34;
$b = 64;
$sum = $a + $b;
分支结构
根据某种条件,来选择顺序的执行。代码间存在互斥性,以使代码间的执行,需要分情况处理
符号: if-else if-elseif switch
1.提问: if-else 与 if-elseif 有什么区别
循环结构
在有限次数内,重复运行相同的代码块
符号:while do-while for foreash
例子:
<?php
for($i=1; $i<10; ++$i){
for($j=1; $j<=$i; ++$j){
echo $i*$j."\t";
}
echo "<br />";
}
?> 结果
1
2 4
3 6 9
4 8 12 16
5 10 15 20 25
6 12 18 24 30 36
7 14 21 28 35 42 49
8 16 24 32 40 48 56 64
9 18 27 36 45 54 63 72 81
php-乘法表
函数
1.定义:一堆代码放在一起,让函数能够解决某种问题
2.类型:系统函数(直接调用)、自定义函数(程序员编写出来后,方可调用)
3.语法:
function 函数名(参数列表){
//函数体
//返回值
}
4.调用函数的方式:调用自定义函数与系统函数的方式相同
5.变量=函数名(参数列表) //当函数有返回值的情况,方可将函数的返回值赋值给变量
函数名(参数列表) //函数没有返回值的情况,直接使用函数即可,参数列表由函数当前的位置周边获取
6.函数:不区分大小分
函数命名:有两种方式
1. 驼峰法
2.小写英文+下划线
7.例子
<?php function sows($row,$col)
{
for($i=1; $i<$row; ++$i){
for($j=1; $j<=$i&&$j<=$col; ++$j){
echo $i * $j ."\t";
}
echo "<br />";
} } $row =20;
$col = 9; sows($row,$col); ?> 结果
1
2 4
3 6 9
4 8 12 16
5 10 15 20 25
6 12 18 24 30 36
7 14 21 28 35 42 49
8 16 24 32 40 48 56 64
9 18 27 36 45 54 63 72 81
10 20 30 40 50 60 70 80 90
11 22 33 44 55 66 77 88 99
12 24 36 48 60 72 84 96 108
13 26 39 52 65 78 91 104 117
14 28 42 56 70 84 98 112 126
15 30 45 60 75 90 105 120 135
16 32 48 64 80 96 112 128 144
17 34 51 68 85 102 119 136 153
18 36 54 72 90 108 126 144 162
19 38 57 76 95 114 133 152 171
php--使用函数来实现数学乘法表
作用域
1.函数外的变量,无法直接在函数内使用
2.函数若要使用函数外的变量,
1.可以使用函数名的参数列表来引用
2.使用系统函数来实现
<?php $number = 1000; function sows()
{
//使用系统的函数,来调用函数外的变量
echo $GLOBALS['number']; //使用调用函数外的变量
echo $number;
} sows(); echo $number;
?> 结果 1000 //调用系统函数实现
//使用调用函数外的变量,没有结果返回
1000 //输出$number的值,
php-函数外的变量与函数内的变量的区别
3.PHP提供一个关键字:global
1.global是将全局作用域的变量的地址,进行变量,然后在局部作用域内新建一个同名的变量名,将外部的地址赋值给局部变量
2.语法:global 变量名;
变量名 = 值;
【风马一族_php】PHP运算的更多相关文章
- 【风马一族_php】数组函数
原文来自:http://www.cnblogs.com/sows/p/6045699.html (博客园的)风马一族 侵犯版本,后果自负 2016-11-09 15:56:26 数组 函数 php- ...
- 【风马一族_php】NO5_php基础知识_数组
原文来自:http://www.cnblogs.com/sows/p/6032570.html (博客园的)风马一族 侵犯版本,后果自负 回顾 匿名函数 定义: 变量 = function [参数列表 ...
- 【风马一族_php】NO4_php基础知识
原文来自:http://www.cnblogs.com/sows/p/6017018.html(博客园的)风马一族 侵犯版本,后果自负 回顾 运算符:算术运算符.逻辑运算符.比较运算符.位运算符.赋值 ...
- 【风马一族_php】NO3_php基础知识
原文来自:http://www.cnblogs.com/sows/p/6001079.html(博客园的)风马一族 侵犯版本,后果自负 回顾 PHP基础语法 1.标签:<?php //PHP 代 ...
- 【风马一族_php】NO1_用php发出一声 Hi
原文来自:http://www.cnblogs.com/sows/p/5990157.html (博客园的)风马一族 侵犯版本,后果自负 第一步 安装WEB服务器 http://www.cnblog ...
- 【风马一族_php】NO0_搭建web服务器
原文来自:http://www.cnblogs.com/sows/p/5977996.html (博客园的)风马一族 侵犯版本,后果自负 安装apache apache是一种B/S结构的软件,apa ...
- 【风马一族_php】
原文来自:http://www.cnblogs.com/sows/p/6054383.html (博客园的)风马一族 侵犯版本,后果自负 2016-11-11 15:13:51 回顾 数组:分配 ...
- 【风马一族_php】NO2_php基础知识
原文来自:http://www.cnblogs.com/sows/p/5995763.html (博客园的)风马一族 侵犯版本,后果自负 回顾 什么是php以及php的发展史 搭建web服务器 apa ...
- 【风马一族_php】PHP与Mysql建立连接
让php发出 Hi作为基础 http://www.cnblogs.com/sows/p/5990157.html 配置apache ../apache/conf/httpd.conf 创建p ...
随机推荐
- MySql存储过程批量删除多个数据库中同名表中的指定字段
1. 创建存储过程batchDeleteField:删除所有名称为"MyDB_"开头的数据库中的指定字段 -- ---------------------------- -- Pr ...
- 关于使用注解设置token免拦截 和 必要 的权限拦截
先说一下这样子做的原理:将某一个注解配置在方法头部,在spring实例化的时候会将注解以切面的形式注入给方法,在拦截的地方判断当前方法有没有注入指定的注解类. 1.先声明一个注解类(类中不需要做任何逻 ...
- 《数据结构与算法分析——C语言描述》ADT实现(NO.00) : 链表(Linked-List)
开始学习数据结构,使用的教材是机械工业出版社的<数据结构与算法分析——C语言描述>,计划将书中的ADT用C语言实现一遍,记录于此.下面是第一个最简单的结构——链表. 链表(Linked-L ...
- tensorflow object detection faster r-cnn 中keep_aspect_ratio_resizer是什么意思
如果小伙伴的英语能力强可以直接阅读这里:https://stackoverflow.com/questions/45137835/what-the-impact-of-different-dimens ...
- 【vue】imitate-beautiful-thing
我从未见过这么美妙的项目,当然与我接触的项目少有关,但是这个项目满满的艺术气息,让人沉醉,让人忍不住的去研究代码. 先放项目地址:https://github.com/eidonlon/imitate ...
- 用Python的requests库作接口测试——对响应进行迭代
使用 requests.Response.iter_lines() 方法,可以很方便地对流式API(例如 Twitter的流式API )的响应进行迭代. 简单地设置 stream 为 True 便可以 ...
- Django项目:CRM(客户关系管理系统)--32--24PerfectCRM实现King_admin自定义操作数据
#admin.py # ————————01PerfectCRM基本配置ADMIN———————— from django.contrib import admin # Register your m ...
- poj 1041 John's trip——欧拉回路字典序输出
题目:http://poj.org/problem?id=1041 明明是欧拉回路字典序输出的模板. 优先队列存边有毒.写跪.学习学习TJ发现只要按边权从大到小排序连边就能正常用邻接表了! 还有一种存 ...
- JS获取页面,元素,窗口和返回页面,元素,窗口的宽高以及滚动值
jquery获取页面,元素,窗口的宽高以及滚动值 //获取浏览器显示区域(可视区域)的高度 : $(window).height(); //获取浏览器显示区域(可视区域)的宽度 : $(window) ...
- 20190818 [ B ]-½
请看到这个蒟蒻博客的人注意一下. 这是简单的[ B ]场考试,如果需要[ A ]场题解请去神犇们的blog. [ B ]场不需要题解,恩? 太蒟蒻了QAQ 考试过程: 怀着我是蒟蒻我怕谁的心情. 首先 ...