PHP学习 基本语法、变量、输出、数据类型

基本语法

基本规则

  • PHP脚本可以放在文档中的任意位置

  • PHP脚本以<?php开始,以?>结束

  • PHP文件的默认文件扩展名是“.php”

  • PHP文件包括HTML标签和PHP脚本代码

  • PHP代码行以分号结束

  • 文本类型的值需要用双引号(英文半角)引起来

  • 代码示例:向浏览器输出“Hello World!”

    <!DOCTYPE html>
    <html>
        <body>
            <h1>my first PHP page</h1>
            
            <?php
            echo "Hello World!";
            ?>
            
        </body>
    </html>
    

常见转义符号

  • 转义字符是使用\加上一个字符来表示特殊含义
  • \a:响铃,发出警报声
  • \n:换行
  • \r:回车
  • \t:水平tab
  • \b:退格
  • \\:反斜杠
  • \?:问号

注释

  • 单行注释://这是单行注释
  • 多行注释:/*这是多行注释*/

变量

  • 变量可以理解为存储信息的容器
  • 与代数类似

PHP变量

  • $开始,其后跟变量名称
    • 一定不要忘记$符号,血的教训。
  • 变量名必须以字母下划线开头
  • 变量名只能包含字母数字下划线
  • 变量名区分大小写
    • $a$A是两个不同的变量

PHP变量声明

  • PHP是一门弱类型语言,没有声明变量的命令
  • 变量在第一次被赋值时被创建

变量作用域

  • 作用域:脚本中变量可以被使用的区域

local

  • 局部变量:在函数内部声明,仅能在函数内部访问
    • 不同函数中可以使用相同的变量名
    • 函数完成时,它的所有变量(除static)被删除
  • 在函数中访问全局变量,需要global关键字

global

  • 全局变量:在函数外部定义,除函数外,可以被脚本中的任意部分访问
    • 存储在 $GLOBALS[index] 的数组中
      • index保存变量名称
      • 该数组可以再函数中直接访问
  • global关键字:函数内访问全局变量时使用

static

  • 首次声明时使用static关键字
  • 变量仍然是局部变量,但函数完成后不会被删除

parameter

  • 参数:
    • 通过调用代码将值传递给函数
    • 是局部变量
    • 在参数列表中声明,作为函数声明的一部分

基本输出语句

echo语句

  • 一种语言结构,可以加括号,也可以不加括号

  • 可以输出一个或多个字符串

  • 字符串可以包含HTML标签

  • 代码示例如下

    <?php
    echo "我要学会PHP!<br>";
    echo "这是一个","字符串";
    ?>
    

print语句

  • 一种语言结构,可以加括号,也可以不加括号

  • 只可以输出一个字符串

  • 字符串可以包含HTML标签

  • 代码示例如下

    <?php
    print "我要学会PHP!<br>";
    print "这是一个";
    print "字符串";
    ?>
    

二者比较

echoprint
无返回值返回值为1
速度较快速度较慢
可以输出一个或多个字符串只能输出一个字符串
一个语言结构,可以使用括号,也可以不使用括号;
字符串可以包含HTML标签

EOF(heredoc)

定义

  • 在命令行和程序语言里定义一个字符串的方法,适用于大段文本
    • 命令行:sh、csh、ksh、bash、PowerShell等
    • 程序语言:Perl、PHP、Python、Ruby等
  • EOF相关
    • 按照原样输出内部内容
    • 其中的任何特殊字符无需转义

使用要求

  • 其后必须接分号(英文半角)

  • EOF可用其他字符代替,只需要保证:

    • 结束标识与开始标识一致
    • 不在正文中出现
    • 常用:EOF、EOT、EOD
  • 结束标识必须顶格独占一行

    • 从行首开始,前后可以衔接任何字符(包括空白)
  • 开始标识可以不带引号

    • 不带引号:解析内嵌变量和转义字符
    • 带双引号:解析内嵌变量和转义字符
    • 带单引号:解析内嵌变量和转义字符
  • 当内容需要使用引号时,直接对引号转义

  • 内嵌函数不会被解析

  • 在heredoc中,变量不需要用连接符·,来拼接

  • 示例代码如下:

    <?php
    $name="pointer";
    $out=<<<EOF
        "My name is $name."
        //双引号内的变量会自动解析
    EOF;
    //结束符需要独立一行顶格书写,前后均无空格
    echo $out;
    ?>
    

数据类型

字符串String

  • 一串字符序列,放在单引号或双引号当中
  • 如:"Hello World!"

整型Integer

  • 整数

    • 至少一个数字
    • 无逗号或空格,无小数点
    • 可正可负
    • 三种格式
      • 十进制
      • 十六进制:Ox为前缀
      • 八进制:O为前缀

浮点Float

  • 带有小数部分,或者是指数形式

  • 示例代码如下

    <?php
    $x=2.4e3;
    $x=3E-5;
    ?>
    

布尔Boolean

  • 值为TRUEFALSE
  • 常用于条件判断

数组Array

  • 在一个变量中存储多个值

  • 示例代码如下

    <?php
    $lunch=array("rice","noodles");
    ?>
    

对象Object

  • 可以用于存储数据

  • 对象必须声明

    • 使用class关键字声明类对象
    • 类:一种结构
      • 属性
      • 方法
      • 类之后无需分号,与C++不同
    • this: 指向当前对象实例的指针
  • 代码示例

    <?php
    class Lunch
    {
        var $type;
        function __construct($type="rice")
        {
            $this->type=type;
    	}
        function what_lunch_type()
        {
            return $this->type;
    	}
    }
    ?>
    

空值NULL

  • 表示变量没有值
  • 可以通过设置变量值为NULL来清空变量数据

数据类型输出函数

  • var_dump()函数:返回变量的数据类型,输出变量的值

  • 代码示例

    <?php
    $x=250;
    var_dump($x);
    echo "<br>";
    ?>
    

资源resource

  • 保存到外部资源的一个引用

  • 通过专门的函数来建立和使用

  • 代码示例

    $handle=fopen("resource.txt","r");//这是一个文件资源类型的变量
    

类型转换

自动转换

  • 在转换的变量前加上想要转换的类型名称

  • 代码实例

    echo (int) 1.1;				//float->int 输出1
    echo (float) '1.1';			//string -> float 输出1.1
    

强制转换

  • 使用settype()函数

  • 代码示例

    $a=5.6;
    settype($a,'int');
    echo $a;		//输出5
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值