PHP基础入门(二)---入门必备哦!

前言

在上一章中,我们初步了解了PHP的网页基础和PHP的入门基础,今天继续给大家分享更多有关PHP的知识。

理论知识看起来可能比较枯燥一些,但是我们的实践(敲代码)毕竟离不开它。

只有理论与实践相结合,才可以用最少的代码实现更多的功能。

***本章关键字:运算符;可变变量;取址符号;分支与循环;流程控制语句goto。

下面,我们来看了解一下PHP中的运算符及更多PHP知识基础

运算符

1、算术运算符:+ - * / % ++ --

2、赋值运算符:= += -= *= /= %= .=(连接字符串)

3、比较运算符:> < >= <= == === <>、!= !==

==:要求值相等,而不需要数据类型相等

===:要求值和数据类型,必须相等

!=:只比较值,值相等为false

!==:比较值和类型,值和类型都相等为false

4、逻辑运算符:and/&& or/|| not/! xor

&&和||进行运算的时候,会发生短路:
当左侧能够判断出结果的时候,便不再执行右侧!!(&&左侧为假时,结果即为假;||左侧为真时,结果即为真)

xor:逻辑异或。两边只有一个对的,结果为true;两边同为true或同为false,结果都为false。

5、位运算符:

将10进制转为2进制,然后再进行运算。

&:按位与,转成二进制后,两个都是1,结果才为1
|:按位或,转为二进制后,有一个为1,就是1
^:按位异或,转成二进制后,两个不相同为1;两个都为1,或都为0,结果均为0。
~:按位取反,转成二进制数后,所有位数取反。1--->0 0--->1
<<:左移:转成二进制后,左移几位,右边空余位数补0。
num << n 相当于num*2^n(※※※)
>>:右移:转成二进制后,右移几位,左边空余位数补0。
num >> n 相当于num/2^n(※※※)

6、其他运算符:
表达式1?表达式2:表达式3:
表达式1成立执行表达式2,否则执行表达式3
``:调用系统dos环境下的命令行并执行。但是由于安全性以及跨平台性,我们并不支持使用;eg:`ipconfig`
@:错误信息控制符:可以临时屏蔽到一些小的错误信息。但是不提倡使用!

可变变量

在一个变量名前面,再加一个$符号。即可将第一个变量的值,作为新变量的名字。

$hello = "hello1";
$$hello = "world";//$hello1
$$$hello = "Jredu";//$world

取址符号

&:变量名前加&可以取出变量在内存中的地址,并可以赋给另一个变量。
$num2 = &$num1;//取出num1的地址给num2,相当于我们说的引用数据类型。num2和num1的值将同时改变。

分支与循环

1、if中的判断条件
详见请点击“好奇就点我吖!”上一章中的第二部分【PHP入门基础】,在这里,博主就不一一介绍了……

2、elseif
PHP中,elseif语句可以连写,也可以空格分隔;

例如:
else if() √
elseif() √

3、switch
PHP中,switch结构的判断,使用==判断,而非===
PHP中,continue可以用于switch结构,作用与break相同。
php中,continue和break可以后接数字,表示跳过几层循环或switch;
eg:break 3;表示终止3层循环

4、do-while循环
do-while循环的最后必须要加分号。
do{

}while();

5、流程控制语句

1、break:终止本层循环;break后面可接数字,表示终止几层循环。break 3,终止3层循环。
2、continue:跳过本次循环;continue后面也可接数字,表示跳过几层循环
3、return:终止当前函数,并返回值(如果有的话),但是一般只在函数中使用,脚本中不建议使用return;
4、exit(mixed 结束语)/die(mixed 结束语)函数:直接结束当前PHP脚本!!
如果有参数传入,则先打印出结束语,然后结束当前脚本。

流程控制语句goto

1、用法:

定义一个跳转的锚点,"标识符"-->"jr:"
在任意位置,设置goto语句,跳转到指定锚点:"goto jr;"

2、作用:

遇到goto语句时,直接跳转到设置的标识符位置。

3、用于实现分支。
注意:goto语句只是让当前的程序控制流跳转到指定锚点,但是并不负责往下执行几行代码。
即,从锚点往下所有代码会依次执行。如果实现多路分支,需配合goto语句,跳过其他分支。(详见案例如下)

4、goto实现循环:

详见案例。但是,goto中,跳出循环不能使用break。

5、goto语句的优缺点:
①优点:使用灵活方便,指令级语句,效率更快,性能更好。
②缺点:goto的大量使用,对于代码的结构化是个灾难。
不利于清晰的代码结构,不利于理解代码,而且极有可能跳过某些重要的声明语句,导致代码错误。

理论不如实践,详情看下面代码↓↓↓

 1 //goto语句实现分支
 2    /*$num = true;
 3    if(!$num){
 4        goto jh;
 5    }else{
 6        goto jr;
 7    }
 8
 9    jr:
10    echo "3333333333333<br />";
11    echo "4444444444444<br />";
12    goto jj;
13
14    jh:
15    echo "5555555555555<br />";
16    echo "6666666666666<br />";
17
18    jj:*/
19
20    //[1]goto循环
21    $num = 0;
22    jr:
23    echo "1222222222221<br />";
24    $num ++;
25    if($num<5){
26        goto jj;//通过goto跳出循环,注意不能使用break
27    }
28    goto jr;
29
30    jj:
31    echo "hahaha";
32
33    /*//[2]goto实现循环
34     $num=0;
35     jr:
36     echo"11111<br>";
37     $num++;
38     if($num<5){
39         goto jr;
40     }*/

以上就是今天要和大家分享的内容,希望对大家有所帮助~

博主再次提醒大家,理论知识是敲好代码的基础,不能忽视!【PHP基础入门】会持续更新,感谢大家的关注~~~

作者:夕照希望
出处:http://www.cnblogs.com/hope666/

时间: 2024-10-04 01:33:17

PHP基础入门(二)---入门必备哦!的相关文章

git 小白入门( 二 ) —— 入门操作

不懂安装的可以翻看 git 小白入门( 一 )-- 安装教程 ____________________________________________ 四:如何操作? 一:创建版本库. 什么是版本库?版本库又名仓库,英文名repository,你可以简单的理解一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改,删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻还可以将文件"还原". 所以创建一个版本库也非常简单,如下我是D盘 –> www下

转 Python爬虫入门二之爬虫基础了解

静觅 » Python爬虫入门二之爬虫基础了解 2.浏览网页的过程 在用户浏览网页的过程中,我们可能会看到许多好看的图片,比如 http://image.baidu.com/ ,我们会看到几张的图片以及百度搜索框,这个过程其实就是用户输入网址之后,经过DNS服务器,找到服务器主机,向服务器发出一个请求,服务器经过解析之后,发送给用户的浏览器 HTML.JS.CSS 等文件,浏览器解析出来,用户便可以看到形形色色的图片了. 因此,用户看到的网页实质是由 HTML 代码构成的,爬虫爬来的便是这些内容

Python入门(二)——IDE选择PyCharm,输入和输出,基础规范,数据类型和变量,常量,字符串和编码,格式化

Python入门(二)--IDE选择PyCharm,输入和输出,基础规范,数据类型和变量,常量,字符串和编码,格式化 我们从今天就开始正式的学习PY交易了,PY交易还行,我们有基础之后学习起来倒不是说那么的被动,我学习的是Python2.7,虽然现在随着版本的迁移至Python3,但是这个并不会对我们造成什么困扰,毕竟只是一个适应阶段 我们的学习资料:廖雪峰官方网站Python2.7教程 一.IDE选择PyCharm 我们虽然在前面一章已经配置过,但是我们还是有很多的IDE可以开发Py,比如su

C#基础入门 二

C#基础入门 二 循环语句 与C语言中用法相同. continue:结束本次循环(continue)后面的代码不再执行,进入下次循环(通常与if连用). 数组 一维数组定义:int[] intArray; 一维数组初始化:定义后,必须对其初始化才能使用 动态初始化:数据类型[] 数组名=new 数据类型[数组长度]{元素1,元素2...}:动态初始化借助new运算符为数组元素分配内存空间,并赋初值. 不给定初值情况下,各元素取默认值,数值型初始值为0,布尔型为false. 静态初始化:数据类型[

教你零基础如何快速入门大数据技巧

现在是大数据时代,很多人都想要学习大数据,因为不管是就业前景还是薪资都非常的不错,不少人纷纷从其他行业转型到大数据行业,那么零基础的人也想要学习大数据怎么办呢?下面一起探讨下零基础如何快速入门大数据技巧吧. 很多人都需要学习大数据是需要有一定的基础的,编程语言就是必备的条件之一,编程语言目前热门的有:Java.Python.PHP.C/C++等等,无论是学习哪一门编程语言,总之要精细掌握一门语言是非常必须的,我们先拿应用广泛的Java说起哦. .在入门学习大数据的过程当中有遇见学习,行业,缺乏系

kafka入门二:Kafka的设计思想、理念

本节主要从整体角度介绍Kafka的设计思想,其中的每个理念都可以深入研究,以后我可能会发专题文章做深入介绍,在这里只做较概括的描述以便大家更好的理解Kafka的独特之处.本节主要涉及到如下主要内容: Kafka设计基本思想 Kafka中的数据压缩 Kafka消息转运过程中的可靠性 Kafka集群镜像复制 Kafka 备份机制 一.kafka由来 由于对JMS日常管理的过度开支和传统JMS可扩展性方面的局限,LinkedIn(www.linkedin.com)开发了Kafka以满足他们对实时数据流

[WebGL入门]二,开始WebGL之前,先了解一下canvas

注:文章译自http://wgld.org/,原作者杉本雅広(doxas),文章中如果有我的额外说明,我会加上[lufy:],另外,鄙人webgl研究还不够深入,一些专业词语,如果翻译有误,欢迎大家指正. HTML5和canvas标签 现在(2012年2月)HTML5依然处于草案阶段. HTML5支持网页端的多媒体功能和画布功能,追加了很多全新的更合理的Tag标签,各个浏览器也都在逐渐的完善这些新的特性. Canvas对象表示一个 HTML画布元素,如它的名字一样,它定义了一个API支持脚本化客

SpringMVC 基础教程 简单入门实例

SpringMVC 基础教程 简单入门实例 标签: Spring MVCspringmvcSpringMVC教程基础教程SpringMVC实例 2013-05-09 13:44 170403人阅读 评论(69) 收藏 举报  分类: Java(23)  Spring框架(3)  版权声明:本文为博主原创文章,未经博主允许不得转载. spring MVC 入门教程二: 一个简单的入门实例教程 该实例的源码和实例中的jar 源码:http://download.csdn.net/detail/swi

[转帖]脑残式网络编程入门(二):我们在读写Socket时,究竟在读写什么?

脑残式网络编程入门(二):我们在读写Socket时,究竟在读写什么? http://www.52im.net/thread-1732-1-1.html 1.引言 本文接上篇<脑残式网络编程入门(一):跟着动画来学TCP三次握手和四次挥手>,继续脑残式的网络编程知识学习 ^_^. 套接字socket是大多数程序员都非常熟悉的概念,它是计算机网络编程的基础,TCP/UDP收发消息都靠它.我们熟悉的web服务器底层依赖它,我们用到的MySQL关系数据库.Redis内存数据库底层依赖它.我们用微信和别

[WebGL入门]二十,绘制立体模型(圆环体)

注:文章译自http://wgld.org/,原作者杉本雅広(doxas),文章中如果有我的额外说明,我会加上[lufy:],另外,鄙人webgl研究还不够深入,一些专业词语,如果翻译有误,欢迎大家指正. 本次的demo的运行结果 立体的模型 这次稍微喘口气,开始绘制立体模型.这里说的[喘口气]是指本次的文章中没有出现任何新的技术知识点.只是利用到现在为止所介绍过的内容,来绘制一个立体的圆环体.到现在为止,只绘制了三角形和四边形,当然,在三维空间中绘制简单的多边形也没什么不对,但是缺点儿说服力.