一、基本语法

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. 1 —— js 语法回顾 —— 数据类型。流程控制。数组

    一,数据类型 字符串 . 数值 .布尔. null . undefined . 对象  ( 数组 . 函数 function(){} . object) undefined 出现的情景 :  (1)变 ...

  2. 《js高程》笔记总结一:基本概念(语法,数据类型,流程控制,函数)

    1.ECMA 欧洲计算机制造商协会 2.";"的作用 代码后的:当压缩代码时可以用于压缩代码,有效的间隔开代码. 3.数据类型有 undefined,null,boolean,st ...

  3. 【Java基础】基本语法-变量与运算符

    基本语法-变量与运算符 关键字和保留字 关键字定义:被 Java 语言赋予了特殊含义,用做专门用途的字符串(单词). 关键字特点:关键字中所有字母都为小写. 用于定义数据类型:class.interf ...

  4. JAVA 变量 数据类型 运算符 知识小结

    ---------------------------------------------------> JAVA 变量 数据类型 运算符 知识小结 <------------------ ...

  5. Go语言 数据类型,流程控制

    Go语言 数据类型,流程控制 人生苦短,Let's Go ! package main // 必须要有一个main包 import "fmt" func main() { fmt. ...

  6. C#基础课程之二变量常量及流程控制

    课堂练习:.一个四位整数 输出它的千位,百位,十位,个位 数字. ; ; % ; % ; ; Console.WriteLine("千位数" + b+" 百位数" ...

  7. java基础语法2-运算符与流程控制

    关键字-标识符-常量和变量-运算符-流程控制-方法-数组 5 运算符 算术运算符Arithmetic Operators 赋值运算符Assignment Operators 比较运算符Compare ...

  8. python - 用户交互/数据类型/格式化输出/运算符/流程控制单双多分支

    python:用户交互: 等用户输入,做反应: username=input("username:")password=input("password:")pr ...

  9. Go语言入门(二)Go语言中的变量、常量、数据类型、流程控制以及函数

    Go语言中的变量 通常用var关键声明变量,有常规方式和简化方式. 常规方式: var name1 type1 name1 = value1 //赋值 简化方式: var name2 = value1 ...

  10. python基础(输出、变量、常量、数据类型、流程控制)

    输出 print print("Hello World!") # python2 和 python3 的区别 # python2 # coding:utf-8 print 123 ...

随机推荐

  1. js实现类bootstrap模态框动画

    在pc端开发,模态框是一个很常用的插件,之前一直用的第三方插件,比如bootstrap,jQuery的模态框插件,最近还用了elementUI的.但是会发现其实动画效果都差不多,那么如何去实现这样一个 ...

  2. hp raid json

    hp机器均已在装OS之前划好raid,统一规格为2*480G SSD, 12*4T SATA ,2*1.6T SSD,其中2*480G SSD做系统盘,划分raid1 已知disk controlle ...

  3. 【志银】NYOJ《题目529》flip

    题目:flip 题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=529 吐槽Time: 由于此题槽点太多,所以没忍住... 看到这题通过率出 ...

  4. STL之priority_queue使用简介

    优先队列容器也是一种从一端入队,另一端出对的队列.不同于一般队列的是,队列中最大的元素总是位于队首位置,因此,元素的出对并非按照先进先出的要求,将最先入队的元素出对,而是将当前队列中的最大元素出对. ...

  5. JavaWeb笔记(三)HTTP

    常见请求头 User-Agent:浏览器版本信息,可以解决浏览器兼容性问题 Referer:请求来源地址,可以防盗链和统计 Request 方法 获取请求方式: String getMethod() ...

  6. springmvc maven搭建二之springmvc的security

    上一篇文档初步搭建了一个springmvc的web工程,现在要来实现第二步咯.将登录校验整合到项目中,我用的是spring 3.0.2的版本,所以这里的登录用了security来处理.不多说,上代码. ...

  7. [THUWC2017][bzoj5020] 在美妙的数学王国中畅游 [LCT+泰勒展开]

    题面 LOJ传送门 思路 这里很重要 它提示我们,把给定的三个函数泰勒展开,并用LCT维护每一项泰勒展开式的值,维护十几项就满足了题目的精度要求 我们考虑一个函数在0位置的泰勒展开 $f(x)=\su ...

  8. Spring bean 创建过程源码解析

    在上一篇文件 Spring 中 bean 注册的源码解析 中分析了 Spring 中 bean 的注册过程,就是把配置文件中配置的 bean 的信息加载到内存中,以 BeanDefinition 对象 ...

  9. [poj] 1375 Interval || 圆的切线&和直线的交点

    原题 每组数据给出一些圆(障碍物)的圆心和半径,一个点和一条线段,求站在这个点,能开到的线段的部分的左端点和右端点.没有则输出"No View" 相当于求过该点的圆的两条切线,切线 ...

  10. 用$("...").attr("checked", true)设置勾选无效的原因

    如下图所示,本来想要实现如下图所示的功能,于是我本来是使用$("...").attr("checked", true/false)来实现该功能,但是第一次点击时 ...