【PHP的基本配置与安装】
1、WAMP windows apache mysql php
2、LAMP linux apache mysql php
【WAMP的配置】
1、下载3个软件包
win32 msi的文件 或者.exe文件
mysql-5.1.46-win32.msi
php-5.2.13-Win32.zip
httpd-2.2.15-win32-x86-openssl-0.9.8m-r2.msi
【php的特性】
1、需要服务器编译
2、后缀名.php
3、CGI运行、模块方式运行、fastcgi(共享进程)
4、PHP面向对象和面向过程的
【如何书写PHP代码】
1、<?php php代码 ?>
2、以分号结束
3、短标记写法
short_open_tag = On
<? 代码块 ?>
4、asp写法
asp_tags = On
<% %>
5、<script language='php'></script>
6、注释 单行注释 //注释代码 #
多行注释 /* 注释代码 */
【变量】
1、变量定义
$变量名 有系统自动去决定变量属于什么类型
变量名命名规则与js一致(js变量不可以是关键字)
2、变量的类型
整型 浮点型 字符串 数组 bool object 资源 null
3、变量名严格区分大小写
【各种变量的类型】
1、整形 integer int
2、double real float
3、字符串 string '' "" <<< 都属与字符串
4、array 数组 $arr = array()数组
5、resource 数据库链接等
6、null 值为NULL
7、boolean 值true false
8、对象 $obj = new class();
【如何去判断一个变量类型】
is_array()
is_float()、is_real、is_double
is_integer is_int
is_bool 没有is_boolean
is_object
is_null
is_string
is_resource
【变量的输出】
1、echo 打印出标准变量
2、print_r() 打印标准变量和数组
3、printf()格式化输出终端 %d %b %s %o %x %X %u %f %c
4、sprintf()格式化输出给变量
5、var_dump()输出数组包括值的类型
var_export()输出数组但是没有值的类型
可以直接做为PHP代码使用
【变量的分类】
复合变量:除了标量之外
标准变量:整型、字符串、浮点型、bool
is_scalar()查看是否是标量;
变量类型转换
gettyp();
settype();
(类型)$变量
【变量的赋值】
$var = 值;普通赋值
引用赋值 &;相当于别名
【变量的作用域】
全局变量:全局有效
静态变量:值不会消失
局部变量:使用时存在,不使用时撤销
函数参数:传递作用,函数内部有效
【超全局变量】
1、$GLOBALS[]、$_SERVER[]以这样形式的为超级全局变量
A)$_SERVER[]:存放用户和服务器的一些信息
foreach($_SERVER as $var =>$var2)
echo "$var=>$var2"
B)$_GET[]
C)$_POST[]
D)$_COOKIE[]
E)$_FILE[][]
F)$_ENV[]
G)$GLOBALS[]//global
H)$_SESSION[]
I)$_REQUEST[]
总结:全局严格区分大小写,任何页面可以直接调用
【数据类型之间的转换】
1、改变数据类型用settype(变量,'类型');
没有real
boolean (或为bool,从PHP4.2.0起)
integer (或为int,从PHP4.2.0起)
float (只在PHP4.2.0之后可以使用,对于旧版本中使用的“double”现已停用)
string
array
object
null(从PHP4.2.0起)
2、(类型)$变量;//临时的转换一下;
存在real
【魔术变量】
1、__FILE__ //显示当前文件的信息
2、__CLASS__ //返回当前的类
3、__FUNCTION__//返回当前的函数名
5、__LINE__ //返回当前文件的行号
6、__METOD__ //返回当前的方法名
7、__DIR__ //文件所在的目录5.3版本之后
【常量】
1、定义:常量
define('常量名称','值');
常量通常大写
【算术运算符】
+ — * /(php与js都为非取整) % ++ -- 优先级与你小学学的一样
【逻辑运算符】
&& and &&>and
|| or ||>or
! 不存在not运算符优先级 !>&&>||
xor
【赋值运算符】
= += -= .= *= /= %=
【比较运算符】
> < == !=(<>) === !== <= >=
【位移运算符】
&
|
~
^
<< 左移 原来的数字*2 n次方
>> 右移 原来的数字/2 n次方
【优先级】
() ! 算术运算 比较运算 逻辑运算符 赋值运算
【补充】
变量值在什么情况下为null
unset();变量声明但是不赋值
或者直接赋值为null
isset()判断变量是否申明且值不为NULL;
empty()判断值是不是为空 '' ""
chr();
intval()
strval()
ord()