php发展

首页 » 常识 » 诊断 » PHP语言基础程序员培养之路第三十一
TUhjnbcbe - 2022/11/20 21:13:00
中科白癜风医院微博 http://m.39.net/pf/a_4580332.html

第一节helloworld

文件命名

  文件后缀名为php

  文件名中不可包含中文、空格、特殊符号

  建议使用有意义的英文单词命名

语言标记

标准风格

?php.......?

注意:纯php脚本文件要求:1.开始标签要在第一行顶头写;2.删除结束标签。

图一

php标签之外是html语言环境,在纯php代码环境下,这些html字符(包括看不见的空格或者回车,制表符号)也会一同输出,引发意外错误。因此,在编码规范中规定:库文件、class类文件等只要是纯php代码的文件,要删除结尾的?结束标签。

!DOCTYPEhtmlhtmlbody    buttonajax异步请求/button  /body/htmlscriptsrc=jquery-1.11.3.min.js/scriptscript  (button).click(function(){    .get(doAction.php,function(data){      alert(data?ok:no);    })  })/script?php  echofalse;//输出:?

结束标签后有空格,输出:

所以要删除php的结束标签

图二

注释符与结束符

//单行注释/*多行注释*/

结束符使用英文分号“;”

hello=helloworld;

常用命令和系统函数

  echo

echo输出:只能输出字符串、数字、布尔(true:1false:空)类型的数据

?phphello=helloworld;  echoh1{hello}/h1;?

快速输出

h1?=hello?/h1

相当于

?phpechohello?

  var_dump()

此函数显示一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构

注意:var_dump中的变量必须是存在的,如果变量存在但值是空,则返回false没有变量时,则返回NULL该函数有输出的功能,因此不必加其它的输出函数

代码

  require与include

1.  require

常用于引入重要文件,若引入失败会直接影响到当前整个脚本,引入失败报Error错误

2.  include

常用于引入普通文件,若引入失败不会对当前脚本有较大的影响,引入失败报Warning错误

3.  require_once

避免重复引入,其他规则同require

4.  include_once

避免重复引入,其他规则同include

  header

用于定义HTTP协议头信息。

php

第二节变量与常量

变量

  声明变量:

  命名规则:字母数字下划线、首字母不能为数字、严格区分大小写、且不能使用关键字!推荐驼峰命名法

  变量销毁:unset(变量名),被销毁的变量在内存中被释放

  引用变量

变量引用:用不同的名字访问同一个变量内容

man=zhangsan;student=man;//用符号引用var_dump(man===student);//true

常量

使用define关键字定义常量,常量命名要全部大写,常量的数据类型不能是资源、对象

定义常量

define(SCHOOL,清华大学);

判断常量

var_dump(defined(SCHOOL));//true

变量与常量的差异

数据

第三节数据类型

八种数据类型

  四种标量类型

–  布尔型(boolean)

–  整型(integer)范围:2^32或2^64(超出自动转换为浮点型)

–  浮点型(float)范围:双精度

–  字符串(string)

  两种复合类型

–  数组型(array)

–  对象型(object)

  两种特殊类型

–  资源型(resource)

–  空型(null)

不同进制

number1=0b10;  //0b开头二进制结果:2

number2=;  //0开头八进制结果:83

number3=0x;  //0X开头十六进制结果:

对象型

具有一定功能和特征的单个事物,对象是属性和方法的集合

资源型

变量可以是文件夹、一个文件、从数据库中得到的结果集等,操作这个变量,相当于操作这些资源。

NULL型

null也是数据,通常表示一种状态,变量没有任何值,就用null表示。以下情况会得到null:

  直接将一个变量赋值为null

  将一个变量销毁后再次使用该变量

  直接使用一个不存在的变量

第四节数据类型转换

自动类型转换

在特殊运算时,会有自动类型转换的情况

null  对象

未知变量(或被销毁变量)      

强制类型转换

  改变原变量类型

使用settype()函数可以将一个指定变量强制转换为另一种指定类型

  不改变原变量类型

格式:新变量=(指定变量类型)原变量;

强制类型转换:不改变原变量类型

定义一个存储变量

old=1;new;  //用于接收转换之后的变量

开始转换

new=(Boolean)old;  //truenew=(Integer)old;  //1new=(Float)old;  //float1new=(String)old;  //1new=(Array)old;  //Arraynew=(Object)sum;  //Object

常用变量检测函数

常用数学运算函数

PHP

第五节字符串

三种定义方式

num=10;

单引号

title=hxsd.num.beijing;

双引号支持解析变量,不能解析表达式,例如:{hxsd+1}

school=divid=boxh1{hxsd}/h1/div;

定界符(可以任意取名)

str2=markdivid=boxh1class=main{hxsd}/h1/divmark;

注意:

定界符中可以使用单、双引号,可以解析变量

定界符中的字符串,会保留所有格式,包括各种空格(尽量顶格写,避免开始的空格)

结束标记一定要顶格写

开始、结束标记(上面代码中的‘mark’)后不能再有空格等字符(包括注释语句也不能有)

字符串支持折行,注意:折行位置会多一个空格

txt=abcdefghijk;//显示结果:abcdefghijk

常用字符串操作函数

第六节数组

数组类型

  关联式数组:下标为有意义的字符串

  索引式数组:下标为默认从0开始的数值

定义数组

  直接赋值方式定义

a[]=10;    a[]=20;    a[name]=张三;a[sex]=男;

结果

/**0=int10*1=int20*name=string张三(length=9)*sex=string男(length=3)*/

  使用array()函数

b=array(10,20,30);b=array(name=张三,sex=男,age=28);

  快捷赋值

c=[10,20,30];c=[name=张三,sex=男,age=28];

  二维数组与多维数组

二维数组

group=array(one=array(张三,李四,王五),  two=array(赵六,孙七),);

定义一个三维数组

class=array(class01=array(    one=array(张三,李四,王五),    two=array(赵六,孙七),),  class02=array(    one=array(张三,李四,王五),    two=array(赵六,孙七),););

获取李四

echoclass[class02][one][1];  //李四

数组的遍历

for遍历索引数组

arr=[11,22,33,44,55];for(i=0;icount(arr);i++){var_dump(arr);};

foreach

f_arr=[name=zhangsan,age=18,sex=m];foreach(f_arraskey=value){echokey.:.value.br;};

list(只用于索引数组)

list(a,b,c,d,e)=[张三,李四,王五,小明,小红];echoa,b,c,d,e;

数组的输出

b=3.1;c=TRUE;var_dump(b,c);/*输出:float(3.1)bool(true)*/

复制数组

arr1=[,,];arr2=arr1;//arr2是个新数组var_dump(arr2===arr1);//false

用引用数组

arr3=arr1;var_dump(arr3===arr1);//true

数组常用函数

数组转JSON

第七节运算符

a=10;b=20;c=hxsd;

数字与数字相加:数学运算

echoa+b;//30

数字与字符串相加

echoa+你好;//数字开头为echo你好+a;//同上

echoa+你好;//10以字母开头字符串,转换成0echo你好+a;//10同上

数字与bool值

echoa+true;//11true:1false:0

PHP-网站介绍「程序员培养之路第三十天」

MySQL-函数「程序员培养之路第二十九天」

MySQL-存储过程、触发器「程序员培养之路第二十八天」

1
查看完整版本: PHP语言基础程序员培养之路第三十一