php 基础知识

知识点总结

第一章 基础知识

目标:

1、掌握PHP的学习方法,了解PHP的发展,理解PHP的定义;

2、理解PHP环境搭建的意义,掌握环境搭建的步骤(关键是 php.ini和httpd.conf的理解)

3、理解B/S运行原理

4、掌握PHP的基础语法,理解变量的作用(比如能够实现1+2+……+100的和) 内容:

1、PHP环境搭建(建议用集成环境XAMPP)

1.1 php.ini的理解及主要配置

1.1.1 、php.ini的理解:php的配置文件

1.1.2 、php时区设置:在php.ini中设置date.timezone = PRC

1.1.2 、错误显示设置:

1.1.3 、扩展模块设置(比如php操作mysql或sqlserver,GD库的使用等): 在php.ini中设置把extension=php_gd2.dll前的’;’去掉

1.2 httpd.conf的理解和主要配置

1.2.1

1.2.2

1.2.3

2、PHP定义

2.1 php的定义:超文本预定义语言

2.2 php的优势和背景: httpd.conf的理解:配置apache 虚拟目录(documentroot) 默认导入index页面优先级

1)PHP是完全免费的。

2)用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。PHP具有非常强大的功能,所有的CGI的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。最重要的是PHP可以用C、C++进行程序的扩展!

2.3 php文件构成

3、B/S运行原理

3.1 B(浏览器)的介绍:

1

万维网(Web)服务的客户端浏览程序。可向万维网(Web)服务器发送各种请求,并对从服务器发来的超文本信息和各种多媒体数据格式进行解释、显示和播放。

3.2 S(web服务器)的介绍:

主要功能是提供网上信息浏览服务s

3.3 运行原理:

php基础知识

HTML网页的基本运行原理,即客户端通过浏览器向服务器发出页面请求,服务器收到请求后直接将所请求的页面发回给客户端,然后客户端就能在浏览器中看到页面的显示效果。

PHP程序通过Web服务器接收访问请求,在服务器端处理请求,再通过Web服务器向客户端发送处理结果。在客户端接收到的只是程序输出的处理结果,是一些HTML标记,而无法直接看到PHP代码。这样能够很好的保证代码的保密性和程序的安全性。

客户端请求 ----?

Web服务器引入指定的脚本进行请求 (通过浏览器) ----?

脚本载入Web服务器 ---?

由服务器指定的PHP解析器对脚本进行解析,解析成HTML语言 ----?

将HTML语言以包的形式传回浏览器 ----?

断开与Web服务器连接(http无状态性的体现)

3.4 http无状态性的理解:

http协议是无状态的,不会记住上次和网页“发生了什么”。服务器不记得上次给了浏览器什么,浏览器需要记住这些值,下次再提交的时候再发到服务器,从而实现交互的效果!

4、基本语法

4.1弱变量类型的理解:定义变量不用声明类型

4.2整型:inteqer任意长度整数

4.3布尔型:boolean,返回真或假

4.4浮点型:float也叫浮点数,双精度数或实数

4.5 字符串:字母数字符号组成

4.5.1字符串中单引号和双引号的区别:双引号里可用单引号,双引号中的变量可直接输出,单引号中的变量会作为字符串

4.6常量

4.6.1常量命名规则:以字母或下划线开始,后面跟着任何字母,数字或下划线,提倡用字母

4.6.2定义常量的语法:define("AAAA","something else");

4.6.3预定义常量:这些常量在 PHP 的内核中定义

4.7变量

4.7.1变量的命名规则:以字母或下划线开始,后面跟着任何字母,数字或下划线,有$ 4.7.2定义变量的语法:$a = ‘value’; 大写,没有$;

注:

1、PHP的基本语法与C语言基本类似,讲解时不作为重点;

2、B/S运行原理是关键,特别是http的无状态性。建议用B/S运行原理来解释环境搭建步骤。

 

第二篇:Char3 php基础知识

PHP 总结

Php (Hypertext Preprocessor) 超文本预处理器

Char3 php基础知识

—PHP的基本语法

Php在html中嵌入3种方式

① <?php ?>

② <? ... ?>修改php.ini中short_open_tag = on ③ <% ... %>修改php.ini中asp_tags = on

④ <script language="php">...</script>

注释 作用:(1)解释代码功能(2)调试程序 ① 单行注释 //这里是单行注释里的内容

② 多行注释 /* 多行注释*/

③ Shell 风格的单行注释 #注释内容

标识符/变量命名规范:

? 必须以$开头

? 第一个字符必须是字母(可以是中文)或者是下划线_,不能使用数字

? 标识符不能出现空格(通常使用下划线进行字符分隔) ? 变量名区分大小写,常量区分大小写。其他都不区分大小写函数名不区分大小写

? 编码规范:

(1)缩进 每缩进一个单位是一个tab(4个空白字符宽度)

(2){} 首大括号与关键字同行,尾括号与关键字同列

(3)运算符 每个运算符与两边参与运算的值或表达式要有一个空格,字符连接符除外

(4)'(' 与关键字紧贴在一起 “)”出来)与. 其他一律用空格分隔

(5)不能出现空白的带有tab 和空格的行,大的程序块上下加入空行,程序块之间只有一个空行,少于15行的程序块可不加空行 ? 函数定义中的左小括号与函数名紧挨着,中间无需空格 ? 开始的做大括号与函数定义为同一行,中间加一个空格,不要另起一行

? 具有默认值的参数应该位于参数列表的后面

? 函数调用与定义的时候参数与参数之间加入一个空格

? 必须仔细检查并切实杜绝函数起始缩进位置与结束缩进位置不同的现象

(6)引号

? 单引号'':任何变量,特殊转义字符 不会被解析,仅支持“\'”, “\\”的转义

? 双引号"": 变量,转义字符都会被解析,还有两项特殊功能性转义“\$”,“{$array['key']}”:双引号中表示变量索引时,可以不加引号

? 优点:程序编写方便

? 缺点:php的解析很慢

(7)数组

若,数组小标是字符串型,必须用单引号将下标括起eg:$array['key'];

绝大多数可以使用单引号的场合,禁止使用双引号

必须使用单引号情况:

? 字符串为固定值,不包含转义字符

? 数组为固定下标

? 表达式中不需要带入变量,eg:$string='test';

正则表达式中全部使用双引号

数据库sql语句中,所有数据必须加单引号,无论数值还是字串

(8)变量、对象、函数名一律为小写格式,除非必要,单词之间一般不使用下划线“_”进行分割

(9)常量应该总是全部使用大写字母命名,可使用下划线来分割单词 php内建值TRUE、FALSE、NULL 必须大写

(10)任何变量在进行累加,直接显示或存储前必需进行初始化

$number = 0;//数值型初始化

$string = '';//字符串初始化

$array = array(); //数组初始化

若判断一个无法确定的变量时,可用empty() 或isset()判断 若确定此变量一定已经被初始化并赋值则用if($switch)形式 Empty()与isset() 的区别为:

? Bool empty(mixed var)(前提是变量存在)

? 如果var 是非空或非零的值,则empty()返回 FALSE。

即:“”,0,“0”,NULL,FALSE,array(),var $var及没有任何属性的对象都被认为是空的,如果var为空,则返回TRUE ? Bool isset(mixed var[, mixed var[, ...]])语言结构 ? 如果var存在则返回TURE,否则返回FALSE.

? 如果已经使用unset()释放了一个变量之后,它不再是isset()。若使用isset()测试一个被设置成NULL的变量,将返回

FALSE。同时要注意的是一个NULL字节("\0")并不等同于php 的NULL常数

1,没有设置过的变量,2,使用unset()之后的3.被是指NULL的变量

判断一个变量是否为数组,请使用is_array()这种判断尤其适用于对数组进行遍历的操作,foreach()

判断一个数组元素是否存在,可使用isset(array(['key']),也使用empty()

(11)包含调用程序文件,全部使用 require_once,以避免可能的重复包含问题;

包含调用缓存文件,由于缓存文件无法保证100%正确打开,用include_once或include. 必要时,可以使用@include_once或@include的方式,以忽略错误提示

Require 与 include 区别

Require () 程序出错,为致命错误,程序将不再执行

Include()程序出错,报出警告,程序仍继续执行

Include_once() 与 include()区别:

Include_once() 执行之前,会检查之前此函数包含的文件有没有被包含过,若包含过则跳过不执行此语句。

Include () 不会检测,直接执行

包含和调用代码中,须以“./”或DISCUZ_ROOT.' ./ '开头,避免直接写程序文件名(eg: require_once 'x.php')

所有包含和调用的程序文件,包括不限于程序、缓存或模板,通常其不能被直接URL请求。Discuz!通过

在./include/common.inc.php中定义一个标记性常量

IN_DISCUZ,来判断程序是否被合法调用。因此, 在除了./include/common.inc.php以外的任何一个被包含和调用的程序文件中,需要包含以下内容,以使得访问者无法直接通过URL 请求该文件:

If(!defined('IN_DISCUZ')){

Exit('Access Denied');

}

(12)错误报告级别

开发和调试阶段 Php.ini 使用 error_reporting(E_ALL);作为默认的错误报告级别 error_reporting(2047)

发布阶段 使用error_reporting(E_ERROR | E_WARNING | E_PARSE);作为默认的错误报告级别error_reporting(7) 上线调试 Error_reporting(0);上线的错误级别

输出命名

? echo 输出一个或多个字符串 echo()是一个语言结构

//因为它是一个语言结构,所以不一定用小括号来指明参数,单引号,双引号都可以

Void echo(string $arg1[,

$中古ddd=1;

echo($中古ddd); sting $...])输出所有参数 echo $中古ddd;

echo $str, $中古ddd, $str1;传递多个参数,不加括号

? <?=$foo ?> k注:php.ini 中 short_open_tag 打开

? Print 输出字符串print()是一个语言结构 总是返回1 Int print(string $arg)

print $str; print($str);

? Printf()输出格式化字符串 返回输出字符串的长度 Int printf(sting $format [,

? Sprintf mixed $args[, mixed $...]] ) 返回一个格式化后的字符串

mixed $args[, mixed $...]]) String sprintf(sting $format [,

与printf 区别为sprintf()需要用echo 输出

$format 指定替换类型明细表

%b

%c

%d

%u 表示整型数据,以二进制形式输出 表示整型数据,以ASCII形式输出 表示整型数据,以有符号形式输出 表示整型数据,以无符号形式输出

%o

%x 表示整型数据,以八进制形式输出 表示整型数据,以十六进制输出,字母部分小写 %X 表示整数数据,以十六进制输出,字母部分大写 %f

%s 表示浮点型数据 表示字符串

? Flush 刷新输出缓冲 该函数将当前为止程序的所有输出发送到用户的浏览器

—数据类型

Char3php基础知识

Void flush( void ) 布尔型 不区分大小写,一般大写

FALSE false,0 ,0.0,"0","",不包括任何元素的数组,(null(包括尚未设定的变量),从没有任何标记的XML文档生成的SimpleXML对象

TRUE

资源)

整型

整型最大值常量表示PHP_INT_MAX表示,若超出整型范围,则被解释为float,若运算结果超出整型范围,也会返回float 除以上说明的情况,其它值都认为true(包括任何

Intval()将一个值转换为整型

Float round()

二进制 十进制

八进制 数字前边+0,

十六进制

浮点型

浮点数的字长和平台相关

字符串型

一个字符串就是由一系列的字符组成,一个字符就是一个字节,一个字节只能有256种不同的变化,这也暗示php无法原生支持Unicode。

字符串长度限制只和运行PHP程序的该台计算机内存大小有关

定义字符串四种方法

(1)单引号 只解析单引号和反斜线

echo 'aaaaaaa\'\\a\na\$aaaa'; //aaaaaaa'\a\na\$aaaa 数字前边+0x

(2)双引号 解析字符串中的变量 和特殊含义的字符 转义字符

Char3php基础知识

Char3php基础知识

\$,\",\[0-7]{1,3} 八进制的字符,\x[0-9A-Fa-f]{1,2}十六进制字符

(3)Heredoc语法结构(变量可以被解析)

常被用来初始化静态变量和类的属性和常量

Eg:

Echo <<<EOF($a=<<<EOF)

....

EOT;(必须在一行开始的位置)

(4)Nowdoc语法结构(变量不被解析)5.3.0加入的 常用来初始化类的属性或常量

Eg:

Echo <<<'EOF'($a=<<<EOF)

....

EOT;(必须在一行开始的位置)

$a="a";“$a” ,"${a}" (简单)或“{$a}”(复杂) //输出a 变量解析两种语法规则:

简单句法规则:当PHP解析器遇到一个美元符号$,它会去尽量形成一个合法的变量名,可以用花括号来明确变量名的界限 即 "${abc}"

数组索引或对象属性也可被解析,数组索引要用方括号(])来表示边际

Eg:

Echo "A banana is {$fruits[banana]}";//有效,但PHP会先寻找常量banana;一般用 echo "A banana is {$fruits['banana']}";

Echo "This square is $square->width meters broad.";

复杂句法规则(不是因为其结构复杂,而是因为可使用复杂的表达式):任何想用在字符串中标量变量,数组变量或对象属性都可以用使用这种方法,只需简单在字符串以外的地方那样写出表达式,然后用花括号{和}把它括起来,由于{无法被转义,只有$要紧挨着{才会被认出来,可用{\$表达{$ 即 "{$abc}"

注:函数,行为,类的静态变量和类的常量只有在php5以后才可在{$}中使用,然而,只有在返回的值作为名称的变量(可变变量)存在的情况下才进行处理,只使用花括号({})无法处理从函数或行为的返回值或从类的常量或静态变量的返回值 Eg:

class beers {

const softdrink = 'rootbeer';

public static $ale = 'ipa';

}

$rootbeer='A & W';

$ipa = 'Alexander Keith\'s';

echo "I'd like an {${beers::softdrink}}<br>";

echo "I'd like an {${beers::$ale}}";

转换成字符串:strval()函数 或在其前面加(string)

Boolean TRUE “1” FALSE ""(空字符串)

变量用 或print 输出 会自动转换字符串

一个整数,浮点数数字字面样式的字符串

Boolean True 被转换字符串 ‘1’,boolean false 转换成空的字符串“”

数组转换成字符串“Array”(因此echo()和print()无法显示该数组)

对象 转换成字符串 get_class()得到对象类名

__toString()得到对象的值

NULL 总是转变成空的字符串

资源总会被转变成 "Resource id #1" get_resource_type(得到resource类型)

串行化:大部分PHP值可以转变成字符串s来长期存储

实现:serialize()函数 产生一个可以可存储的值表示(有利于存储或传递PHP的值,同时不丢失其类型和结构)

String serialize(mixed $value)

Mixed unserialize(string $str[, string $callbak]);

Eg:

$arr = array('a', 'b', 'c');

$str = serialize($arr);

echo $str; //a:3:{i:0;s:1:"a";i:1;s:1:"b";i:2;s:1:"c";}

print_r(unserialize($str));//Array ( [0] => a [1] => b [2] => c )

i:表示键的类型;0:键的值 s: 值的类型 l值的长度 值 字符串转换成数字

若字符串中不包含'.','e','E',并在整型类型的限定,则被认定为integer(整型),其它被认定float;'10.5' float(10.5) '10' int(10) 字符串开始部分给定了它的值,如果字符串以合法的数字开始,这个数字可以直接使用,eg: '11aaaa' int(11)

否则值就是0 eg: 'aaa11' int(0)

即合法数值由符号,后面跟着一个或多个数字(可能有个小数点),再跟着可选的指数符号'e'或'E',后面跟着一个或多个数字 即'([0-9])[.][e][E][0-9]'

数组:把具有相同类型的变量的若干个变量按有序形式组织起来的一种形式 PHP(对个数值以键值对的形式存储而成的数据集合)

定义数组

(1) array() 语言结构 array( $key => $value, ...)

$key 可以是整数 或 字符串 (浮点数被取整为integer,对给出的值没有指定键名,则取当前最大的整数索引值,而新的键名+1,若指定键名已有值,则该值被覆盖)

$value 任意类型的值

(2)$arr[]=value; 或 $arr[key] = value;

若$arr 不存在,则新建数组,若改变一个值,赋一个新值,若要删除一个键名/只对,用unset(),但数组不会重新建索引,如要重新索引用array_value($a); eg: $b = array_value($a);

任意类型:integer,float,string,boolean,resource,转换为数组,将

得到一个仅有一个元素的数组,即 (array)$a = array($a) NULL 转换到数组(array)得到一个空数组

Count() 取得数组元素的个数

Print_r() 打印数组

Void var_dump(mixed $expression[, mixed $expression...])打印变量的相关信息

遍历数组前首先判断此变量是否是一个数组 用 is_array(); 对象

class foo{

Function do_foo(){

Echo "Doing foo.";

}

$bar =new foo;

$bar->do_foo();

}

创建对象的过程称为实例化,对象被创建后就包含三方面特性:句柄,属性,方法

句柄:当对象被创建后该对象就会获得一块存储空间,该控件的地址为对象的标识,就是句柄

属性:对象特性,即变量

方法:对象所做的动作 即函数

资源 是一种特殊的变量,是PHP处理一些数据库连接或操作系

统对象的句柄,当不需要这些资源时,PHP会自动释放他们 Null型

(1)被赋值为NULL

(2)尚未赋值

(3)被unset()

类型转换

隐式 自动类型转换的一个例子是加号“+”。 如果任何一个操作数是浮点数,则所有的操作数都被当成浮点数,结果也是浮点数。否则操作数会被解释为整数,结果也是整数。注意这并没有改变这些操作数本身的类型;改变的仅是这些操作数如何被求值以及表达式本身的类型。

Eg: $foo = "0"; $foo += 2;//2 $f00

显式:

(1)

(int), (integer) - 转换为 整型(integer)

(bool), (boolean) - 转换为 布尔型(boolean)

(float), (double), (real) - 转换为 浮点型(float)

(string) - 转换为 字符串(string)

(binary) - 转换为二进制 字符串(string) (PHP 6)

(array) - 转换为 数组(array)

(object) - 转换为 对象(object)

(unset) - 转换为 (PHP 5) (2) String gettype(mixed $var)//获取变量的类型 Bool settype(mixed $var, string $type)//设置变量的类型 Bool is_array(mixed $var)//检测变量是否是数组 Bool is_float(mixed $var)(is_real(),is_double)//检测变量是否是浮点型

Bool is_bool(mixed $var)//检测变量是否是布尔型 Bool is_integer(mixed $var)(is_int())//检测变量是否是整型 Bool is_string(mixed $var)//检测变量是否是字符串型 Bool is_array(mixed $var)//检测变量是否是数组型 Bool is_object(mixed $var)//检测变量是否是对象 Bool is_numeric(mixed $var)//检测变量是否为数字或数字字符串

Bool is_dir(string $filename)//判断文件名是否是一个目录

Bool is_file(string $filename)//判断给定文件名是否为一个正常文件

Bool is_null(mixed $var)检测变量是否为null

Bool is_readable(string $filename)判断给定文件是否可读

Bool is_writable(string $filename)(is_writable)判断给定的文件是否可写

Bool is_resource(mixed $var) 检测变量是否为资源类型

Bool is_scalar(mixed $var)检测变量是否为标量

Bool Function_exists(string $function_name) 判断函数是否是否定义

Bool method_exists(object $object ,sting $method_name)//检验类方法是否在指定类中是否存在

Bool class_exists(string $class_name[, bool $autoload]) 检查类是否定义

<?php

function__autoload($class_name) {//试图使用尚未被定义的类时自动调用

require_once$class_name.'.php';

}

$obj= newMyClass1();

$obj2= newMyClass2();

?>

Bool interface_exists(string $interface_name [, bool $autoload])检查接口是否已定义

Bool File_exists(string $filename)//检查文件或目录是否存在

Mixed apc_exists(mixed $keys) 检查APC中是否存在某个或者某些key

变量的值赋值:将赋值表达式的值复制到变量中 变量的引用赋值:一个变量引用另一个变量,两个变量将会指向内存中的同一内存地址,因此任何一个变量的变化都会引起另一个变量的变化 预定义变量 超全局变量:在全部作用域中始终可用的内置变量 $GLOBALS(全)引用全局作用域中可用的全部变量 一个包含了全部变量的全局组合数组,变量的名字就是数组

的键

$_SERVER(全):服务器和执行环境信息(是包含了诸如头信息(header)路径(path)以及脚本位置信息的数组)

‘SERVER_ADDR’:服务器的IP地址

‘SERVAR_NAME’:服务器主机名

‘SERVER_PROTOCOL’:请求页面是通信协议的名称和版本

‘REQUEST_METHOD’:访问页面使用的请求方法‘GET’‘HEAD’‘POST’‘PUT’

‘REQUEST_TIME’请求开始的时间戳

‘DOCUMENT_ROOT’当前运行脚本所在的文档的根目录

‘HTTP_HOST’当前请求头中HOST项的内容,如果存在

‘REMOTE_ADDR’用户的IP地址

‘REMOTE_HOST’用户的住主机名

‘REMOTE_PORT’用户机器上连接到web服务器所使用的端口号 ‘SCRIPT_FILENAME’当前执行脚本的绝对路径 ‘SERVER_ADMIN’指明Apache服务器配置文件中的SERVER_ADMIN参数

‘SERVER_PORT’web服务器使用的端口 ‘SCRIPT_NAME’包含当前脚本的路径 ‘REQUEST_URI’URI用来指定要访问的页面

$_GET(全) $_POST(全) $_GET 与 $_POST 区别:

Char3php基础知识

$_POST

从客户端得到获取值:$_COOKIE $_GET $_FILES(全)

? File_uploads允许通过HTTP上传文件,默认ON ? Upload_max_filesize 允许上传文件的最大值 2MB ? Upload_tmp_dir上传文件时临时存放文件的地方

? Post_max_size采用PHP方法进行表单提交中 php所能接收的最多数据量 8MB

? Max_input_time接收数据的时间限制 60s

? Memory_limit 运行脚本使用的最大内存容量 16MB

? Max_execution_time 设置强制终止脚本前PHP等待脚本执行完毕的时间 30s

临时文件名

上传错误信息 UPLOAD_ERR_OK 0,文件上传成功 UPLOAD_ERR_INI_SIZE 1,上传文件超过了upload_max_filesize

UPLOAD_ERR_FORM_SIZE2,上传文件超过了max_file_size UPLOAD_ERR_PARTIAL 3, 文件只有部分上传 UPLOAD_ERR_NO_FILE 4,文件没有被上传

UPLOAD_ERR_NO_TMP_DIR 6,找不到临时文件夹 UPLOAD_ERR_CANT_WRITE 7,文件写入失败 $_REQUEST(全)默认包含了$_GET,$_POST,$_COOKIE $_SESSION(全) 启动会话,一般写在首行此函数之前不能有echo语句 两种方式(1)SESSION_START()// (2)将session. auto_start 设置为1 ,表示可用 SESSION['name',bool]//定义session SESSION['name'];//bool 调用session变量 (3)查看session_id Echo session_id(); //每打开一个IE浏览器,显示不同的id刷新或链接网页是,session_id不变 (4)Session变量的值在网页中都能输出(相当于全局变量) Session用于网页之间值的相互传递 $_COOKIE(全) 1,cookie随着header传染客户端 2, 浏览器记录cookie容量<=4kb 每个浏览器只能保存某个服务器上20个cookie

每个用户的浏览器最多只能访问300个cookie 使用cookie必须确认浏览器中cookie是否打开

3,bool setcookie(name [, value[, int expiration [, path[,

secure]]]])

Expiration:过期时间 时间为负是,cookie无效

Path:路径

Secure :安全

取得cookie $_COOKIE['name']

$http_raw_post_data 原生POST数据 $http_response_header HTTP响应头 $_ENV(全)环境变量 定义常量 Bool define(string $name, mixed $value[, bool $case_insensitive = false])

Bool defined(string $name)//判断此常量是否存在

define('P', 3.14);

echo P;

function area($r) {

} if(defined('P')){ } $area = $r * $r * P; echo $area;

area(3);

echo __LINE__;

echo __FILE__;

echo __DIR__;

echo __FUNCTION__;

结果

3.14

28.26

80

D:\www\lianxi\01.php

Notice: Use of undefined constant __DIR__ - assumed '__DIR__' in D:\www\lianxi\01.php on line 82(原因,此常量是5.3以后加的) __DIR__

预定义常量 PHP_INI_MAX PHP_INI_MIN PHP_INI_SIZE E_ALL 调试时候用 (E_ERROR E_WARNING 程序发布时候 用 E_PARSE ) E_NOTICE error_reporting(E_NOTICE);报错时,会输出路

径,因此不在程序中用

魔术常量 (不区分大小写) __LINE__ 文件中的当前行 __FILE__ 文件的完整路径和文件并 __DIR__ 文件所在的目录 __FUNCTION__ 函数的名称 __CLASS__ 类的名称 __METHOD__方法名称 __NAMESPACE__当前空间的名称 错误抑制符@

当将@放在一个php表达式之前,该表达式可能产生的任何错误信息都被忽略掉

++ -- + - * / % (+= -= *= /= %= .= )

位运算

Char3php基础知识

Char3php基础知识

进制转换:

二进制 十进制 十六进制

//十进制到二进制

echo decbin(10).'<br>'; //1010

//十进制到十六进制

echo dechex(10).'<br>'; //a

//十进制到八进制 //十进制转换其他进制 返回都为字符串 echo decoct(10).'<br>'; //12

//二进制到十进制

echo bindec(01).'<br>'; //1

Octdec();//八进制转换到十进制

Hexdec();//十六进制转换到十十进制

echo round(3.4).'<br>'; //3 //float round(float)

echo round(3.6).'<br>'; //4 //对浮点数四舍五入

//舍去取整 float floor(float $value)

echo floor(3.7).'<br>'; //3

//进一取整 float ceil(float $value)

echo ceil(3.4).'<br>'; //4

for($i = 0; $i < 5; $i++){

}

print_r($arr);

//返回字符的ASCII码值,int ord(string $string); echo ord('a').'<br>'; //97

echo ord('z').'<br>';//122 a-z 97-122

echo ord('A').'<br>'; //65

echo ord('Z').'<br>'; //90 A-Z 65-90

echo ord('0').'<br>'; //48 0-9 48-57

//返回指定字符 sting chr(int $ascii) echo chr(27);

$arr[] = rand(1,10);

相关推荐