(4)PHP基本语法、变量、数据类型、运算符、流程控制
一、基本语法
1、PHP在网页里的结构
<?php
.....
?>
2、php的另一种格式(不推荐使用)
<script language="php">
,,,,,,,,,
</script>
3、php注释
//
/* */
# unix 风格
4、一条语句要用 ; 结束
<?php
echo "abc";
?>
5、PHP区分大小写
6、输出到屏幕
echo
printf
printf('今天吃了%d个鸡蛋',5)
7、查看类型、设置类型
查看类型
gettype(变量)
返回1,表示转换成功
设置类型
settype()
<?php
$sum=8;
settype($sum,'string');
echo gettype($sum);
?>
浏览器输出

8、判断变量是否存在
返回bool值
isset(var)
销毁变量
unset(var)
empty(var)
当变量为空时返回 ture(0是空和false,1是ture)
//空字符串,0,‘0’,null,空数组、空变量、空对象。都被认为是空
二、常量&变量
1、常量
固定不变的量设置为常量,常量贯穿整个脚本是自动全局的。
有效的常量名以字符或下划线开头(常量名称前面没有 $ 符号)
设置常量,请使用 define() 函数 - 它使用三个参数:
.首个参数定义常量的名称。
.第二个参数定义常量的值。
.可选的第三个参数规定常量名是否对大小写敏感。默认是 false。
<?php
define("count", "701",true);
echo COUNT;
?>
2、变量
在程序运行中,会随时发生变化的量叫做变量。
变量固定要用$开头,之后php的变量名要再用字母或下划线开头,后面跟任意数字,字母、下划线。
例:$text="abc";
PHP是门类型松散的语言,我们不必告知 PHP 变量的数据类型。 PHP 根据它的值,自动把变量转换为正确的数据类型。
例
$a=300;
现在的a是整型,之后再把1.5赋值给a
$a=1.5;
现在a变成了浮点型
3、变量的作用域
PHP 有三种不同的变量作用域:
local(局部),global(全局),static(静态)
函数之外声明的变量拥有 global 作用域,只能在函数以外进行访问。
函数内部声明的变量拥有 local 作用域,只能在函数内部进行访问。
<?php
$x=5; // 全局作用域 function myTest() {
$y=10; // 局部作用域
echo "<p>测试函数内部的变量:</p>";
echo "变量 x 是:$x";
echo "<br>";
echo "变量 y 是:$x";
} myTest(); echo "<p>测试函数之外的变量:</p>";
echo "变量 x 是:$x";
echo "<br>";
echo "变量 y 是:$x";
?>
运行结果:
在函数内部测试变量:
变量 x 是:
变量 y 是:10
在函数之外测试变量:
变量 x 是:5
变量 y 是:
如果想要在函数内部使用外部的的变量,就要在内部重新用关键字global定义变量名。
<?php
$x=5;
$y=10; function myTest() {
global $x,$y;
$y=$x+$y;
} myTest();
echo $y; // 输出 15
?>
4、static变量
static变量一般在函数内部使用,定义成static类型的变量当函数介绍时,变量的数据不会消失,再次调用时仍然能继续使用。
<?php
function myTest() {
static $x=0;
echo $x;
$x++;
}
myTest();
myTest();
myTest();
?>
结果:
0
1
2
3
4
注意:静态变量只能被初始化一次,在次才初始化会报错。静态变量的生命周期是一次页面刷新。
三、数据类型
1、整型
整型包括正整数、负整数和0
可以用三种格式规定整数:十进制、十六进制(前缀是 0x)或八进制(前缀是 0)
<?php
$x = 5985;
$x = -345; // 负数
$x = 0x8C; // 十六进制数
$x = 047; // 八进制数
?>
2、浮点型
浮点数是有小数点或指数形式的数字。(只有一种类型,不分float/double)
<?php
$x = 10.365;
$x = 2.4e3;
$x = 8E-5;
?>
3、逻辑型
只有两个值 true、flase
$x=true;
$y=false;
4、字符串
一个字符代表一个字节,可以使用单引号或双引号。
<?php
$x = "Hello world!";
$x = 'Hello world!';
?>
5、数组
<?php
$cars=array("Volvo","BMW","SAAB");
?>
以后详解
6、对象
对象是存储数据和有关如何处理数据的信息的数据类型。
在 PHP 中,必须明确地声明对象。
首先我们必须声明对象的类。对此,我们使用 class 关键词。类是包含属性和方法的结构。
然后我们在对象类中定义数据类型,然后在该类的实例中使用此数据类型:
<?php
class Car
{
var $color;
function Car($color="green") {
$this->color = $color;
}
function what_color() {
return $this->color;
}
}
?>
以后详解
7、NULL
NULL 值表示变量无值
<?php
$x=null;
?>
8、资源类型
资源类型是一种特殊的类型,常用在数据库连接、文件句柄等。
<?php
$con=mysql_conncet("localhost",“root”,“root”);
$fp = fopen("test.txt", "rw");
?>
以后详解
四、运算符号
五、流程控制
(4)PHP基本语法、变量、数据类型、运算符、流程控制的更多相关文章
- 1 —— js 语法回顾 —— 数据类型。流程控制。数组
一,数据类型 字符串 . 数值 .布尔. null . undefined . 对象 ( 数组 . 函数 function(){} . object) undefined 出现的情景 : (1)变 ...
- 《js高程》笔记总结一:基本概念(语法,数据类型,流程控制,函数)
1.ECMA 欧洲计算机制造商协会 2.";"的作用 代码后的:当压缩代码时可以用于压缩代码,有效的间隔开代码. 3.数据类型有 undefined,null,boolean,st ...
- 【Java基础】基本语法-变量与运算符
基本语法-变量与运算符 关键字和保留字 关键字定义:被 Java 语言赋予了特殊含义,用做专门用途的字符串(单词). 关键字特点:关键字中所有字母都为小写. 用于定义数据类型:class.interf ...
- JAVA 变量 数据类型 运算符 知识小结
---------------------------------------------------> JAVA 变量 数据类型 运算符 知识小结 <------------------ ...
- Go语言 数据类型,流程控制
Go语言 数据类型,流程控制 人生苦短,Let's Go ! package main // 必须要有一个main包 import "fmt" func main() { fmt. ...
- C#基础课程之二变量常量及流程控制
课堂练习:.一个四位整数 输出它的千位,百位,十位,个位 数字. ; ; % ; % ; ; Console.WriteLine("千位数" + b+" 百位数" ...
- java基础语法2-运算符与流程控制
关键字-标识符-常量和变量-运算符-流程控制-方法-数组 5 运算符 算术运算符Arithmetic Operators 赋值运算符Assignment Operators 比较运算符Compare ...
- python - 用户交互/数据类型/格式化输出/运算符/流程控制单双多分支
python:用户交互: 等用户输入,做反应: username=input("username:")password=input("password:")pr ...
- Go语言入门(二)Go语言中的变量、常量、数据类型、流程控制以及函数
Go语言中的变量 通常用var关键声明变量,有常规方式和简化方式. 常规方式: var name1 type1 name1 = value1 //赋值 简化方式: var name2 = value1 ...
- python基础(输出、变量、常量、数据类型、流程控制)
输出 print print("Hello World!") # python2 和 python3 的区别 # python2 # coding:utf-8 print 123 ...
随机推荐
- leetcode 【 Remove Duplicates from Sorted List II 】 python 实现
题目: Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct ...
- KMS激活windows
slmgr /skms 106.0.6.209 slmgr /ato .查看当前系统是否永久激活,命令的作用是查看当前许可证状态的截止日期 slmgr.vbs -xpr 查看Windows正式版产品密 ...
- 【视觉SLAM14讲】ch4心得与课后题答案【仅供参考】
答案: Q1:验证SO(3) SE(3) Sim(3)关于乘法成群 SO(3) : 由P64最开始可知,乘法代表了旋转,而SO(3)是旋转矩阵的集合, SE(3) Sim(3) 同理(最基础的部分 ...
- QQ网页强制聊天,微博一键关注
<!doctype html> <!-- 微博关注需要的js --> <html xmlns:wb="http://open.weibo.com/wb" ...
- Homework-09 二维数组动态显示
思路 主要是把计算的函数由一次跑完全部改成一次一步 主要是把一个3重for循环改为能一步一次的实现 public int nstep(int n){ while((n--)!=0){ //n步长 // ...
- 九 DIP 依赖倒置原则
首先看定义: 1.高层模块不依赖于低层模块,两者都应该依赖于抽象层 2.抽象不能依赖于细节,细节必须依赖于抽象 首先,模块是个抽象的概念,可以大到一个系统中的子系统作为一个模块,也可以是某个子系统中的 ...
- FormsAuthentication类
理解代码: string cookieName = FormsAuthentication.FormsCookieName; FormsAuthentication类说明: // 摘要: // 为 W ...
- hexo 添加标签
--- title: title #文章標題 date: 2016-06-01 23:47:44 #文章生成時間 categories: "Hexo教程" #文章分類目錄 可以省略 ...
- 有许多部分没有在cgroup中显示啊,current/high/low/min等等
没看见current/high/low/min 在cgroup中的显示内容
- SheetJS & Error: Sheet names cannot exceed 31 chars
SheetJS Error: Sheet names cannot exceed 31 chars title + version https://github.com/SheetJS/js-xlsx ...