• 前端向后台的华丽转身 — PHP入门篇


      三个月就这么悄悄溜走了,本K对于前端虽然有了一定的认识,但对一些方面还是处于一种比较萌币的状态,就在这种萌币状态下,本K又跟着大神浩开始了后台语言—PHP语言的学习。PHP的学习对于学过其他语言的人来说,是非常easy的(原因后续会提及),K在初次接触的时候也就仅仅是对一些PHP的写法有点膈应而已......不多说废话了,下面就由本K带着同志们瞅瞅PHP到底是啥。

    一、那些PHP不得不说的事。

     

      Hypertext Preprocessor,又称为超文本预处理器(HTML为超文本标签语言,这里敲黑板...),就是我们所说的PHP。它是一种糅杂百家的后台语言,在PHP中,可以见到C、Java等语言的写法和它自创的一些写法,这也就是为什么说学过其他语言的人会比较容易接受PHP。

      至于现如今PHP的版本问题,我们现在常用的是5.3.10版本及以上版本,别问我为啥,就算问我我也不会告诉你原因是这个版本兼容性好的!

      再者,开发PHP会需要一定的开发环境,我们现在经常用的是wamp(Windows + Apache + MySql + PHP),其他诸如Lamp(Linux + Apache + MySql + PHP)、PHPStudy、APPServer等,也是经常用的,在开发环境的选择上,在兼顾自己工作需求的情况下,当然是萝卜青菜、各有所爱啦。

      最后,提一下PHP的兼容性问题。PHP几乎可以链接所有的数据库,并友好的兼容支持各种操作系统,所以说,PHP能够火起来也是在情理之中的。

    二、初识PHP。

    聊了这么多,PHP文件到底长啥样呢?咱们来看图说话~

      这就是我们最常见到的php文件结构,K来给大家讲讲结构从上到下都是些啥。

      这个是php文件或段落开始的标志,象征着一个php脚本从这里开始;

      这句话是为了使php脚本中的中文能够正常显示,所添加的header;

      主体部分就不啰嗦了,后面会讲到;

      这个是php脚本的结束,在某些情况下是可以省略掉的,后面K会细讲。

      除上面大家看到的这种结构以外,php脚本还可以有很多写法,但这里K就不讲了,因为其他几种写法不然就是回合系统起冲突,不然就是不推荐使用,K觉得还是先研究透彻这一种写法,在去琢磨其他吧。

    三、正儿八经说PHP — 入门篇

    (一)PHP中的指令分隔符 — ;

      这一点是学过JS的同志们最容易犯错误的一点,这里着重给大家说一下;的使用注意事项!(敲黑板......)

      1、PHP中的结构定义语句,不需要使用分号结尾,分支、循环、类、函数等}结尾的。
      2、PHP中的功能执行语句,不用}结尾的,必须使用分号结尾。
      3、特例:最后结束标记?>前的最后一条语句,可以省略分号。

    (二)PHP中的注释

      PHP中的注释有四种,自己瞅图~

    (三)PHP中的变量

      1、PHP中的变量。声明与使用,必须用$开头。
      2、PHP是一种弱类型预言,变量其实并不需要声明,可以直接给变量赋任何类型的值。
      3、PHP中可以使用连等同时声明多个变量。而不能使用,分隔
       >>>例如:$num1=$num2=$num3=$num4=5;
      4、常用变量函数:
       4.1 unset(); 删除并释放变量;
       4.2 isset(); 检测变量是否设置;
       4.3 empty(); 检测变量是否为空(未设置或值为null都为空)。
      5、变量的命名:只能由字母数字下划线组成,开头不能为数字。
       >>> 而且,PHP中变量区分大小写!
       >>> 但是,PHP内置函数或者类名不区分大小写!
      6、PHP中的数据类型(八种)(敲黑板......)
       6.1 四种标量类型:布尔型Boolean、 整形Integer、 浮点型Float/Double、 字符串String
       6.2 两种符合类型:数组Array、 对象Object
       6.3 两种特殊类型:资源Resource、 空null
      7、整形的范围:从-2^31~(2^31-1)超过这个范围,自动转为浮点型。

    (四)PHP中的字符串

      PHP支持三种方式声明字符串:
      1、'':单引号
      2、"":双引号
      3、<<<:定界符 $str = <<< s(定界标识符)
       //定界符声明字符串,通过<<<(定界标识符)开始
       //遇到顶格的定界标识符结束,一个空格都不能有
       //定界标识符可以是任意字母,只需要保证开始和结束一致即可
      s(顶格的定界标识符);
      4、三种声明方式的区别:
       4.1 定界符功能默认与双引号相同。
       4.2 单引号中不能解析变量;双引号可以解析变量。
        >>> 双引号解析变量时,需注意变量名后需用空格与其他字符分隔,或者用{}包裹起来 "hahaha${num}hahaha" "hahaha{$num}hahaha"均可。
       4.3 单引号中可以放双引号;双引号中可以放单引号。但是不能放自身相同类型的引号。
       4.4 单引号中不能使用转义字符(除了单引号''本身,转义符本身);双引号中可以使用转义字符。

    (五)PHP中的伪类型

      伪类型:并不是一种真实存在的数据类型。它的存在仅仅是告诉程序员可以是哪些、哪种数据类型,常用于撰写帮助文档时使用。
      mixed:代表参数可以是多种不同数据类型;
      number:代表参数可以使Integer或者Float;
      callback:代表参数可以是一个回调函数。

    (六)PHP中的数据类型转换

      1、自动类型转换:表示运算的时候,Boolean、null、String等类型,会先自动转为int和Float类型
        null --> 0 true --> 1 false --> 0
        string --> 第一个非数值字符前的数字,没有转为0 "123a" --> 123
      2、强制类型转换,根据自己的需求,强制将变量转为其他类型的变量:
       2.1 $新变量 = (新类型)$原变量
        >>> $str = (String)1;
      新类型可以使用全拼,也可以使用缩写
      可以强制转换的类型如下:
      (int),(integer) - 转换成整型
      (bool),(boolean) - 转换成布尔型
      (float),(double),(real) - 转换成浮点型
      (string) - 转换成字符串
      (array) - 转换成数组
      (object) - 转换成对象
       2.2 使用setType()函数强转
       bool setType(mixed var,String type);第一个参数表示任何类型的变量,另一个参数表示字符串类型的数据类型
       2.3 两种转换的区别
        第一种是将转换之后的结果赋给新变量;
        第二种直接修改了原变量的数据类型。

    (七)PHP中的判断变量类型的测试函数(崩溃状......)

    is_bool():判断是否是布尔型
    is_int()、is_integer()和is_long():判断是否为整型。
    is_float()、is_double()和is_real():判断是否为浮点型
    is_string():判断是否为字符串
    is_array():判断是否为数组
    is_object():判断是否为对象
    is_resource():判断是否为资源类型
    is_null():判断是否为null
    is_scalar():判断是否为标量
    is_numeric():判断是否是任何类型的数字和数字字符串
    is_callable():判断是否是有效的函数名

    (八)PHP条件判断中算作false的情况(敲黑板......)

      1、Boolean:false
      2、Integer:0
      3、Float:0.0
      4、String: "" "0" ("0.0" "000" 都算对!只有一个0算错!)
      5、空Array
      6、空Object仅在PHP4算false,其他版本对象都算TRUE
      7、null和尚未定义的变量都算错
      8、所有资源都算对!!!!!(除PHP4,所有对象也算对 )

     (九)PHP中的常量(要坚强......)

      1、常量的定义
       bool define(String 常量名,mixed 常量值[,bool 是否区分大小写]);
      2、常量的注意事项
       2.1 常量定义只能使用define函数
       2.2 常量名原则上要求必须使用大写声明。而且必须不能带$符号
       2.3 常量声明以后,默认全局范围有效,没有作用域之说
       2.4 常量不但不能改,而且不能删,unset()、setType()等函数均无效
       2.5 常量默认区分大小写,但是可以在声明常量时,将define第三个参数设为true即可改为不区分大小写,但是原则上不改
       2.6 常量必须使用define()定义后才能使用,如果使用未声明的常量,则会将常量名转为常量字符串,但是会报警告
       2.7 常量的值只能是标量
      3、可以使用constant读取常量的值,注意用""包裹常量名
          可以使用get_defined_constants();获取所有已定义常量,包括系统自定义的n多个常量

       就先给大家介绍这些小基础,欲知后事如何,请......点赞

  • 相关阅读:
    springboot之静态资源路径配置
    window使用结束进程
    MyBatis动态sql语句归纳
    Mybatis——实体类属性名和数据库字段名不同时的解决方案
    oracle 查看被锁表 及解除锁定
    Eclipse设置软tab(用4个空格字符代替)及默认utf-8文件编码(unix)
    navicat和 plsql 连接oracle数据库 总结
    eclipse 快捷键Open Implementation 直接退出
    linux centos 安装mysql
    拦截器 过滤器 监听器 的区别
  • 原文地址:https://www.cnblogs.com/wk1102/p/6886041.html
Copyright © 2020-2023  润新知