本文是一篇php学习的基础教材,感兴趣的同学参考下. PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于Web开发领域
PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于Web开发领域。PHP的文件后缀名为php。
WEB的应用
当客户端向服务器的程序提出请求时,web服务器根据请求响应对应的页面,当页面中含有PHP脚本时,服务器会交给PHP解释器进行解释执行,将生成的html代码再回传给客户端,客户端的浏览器解释html代码,最终形成网页格式的页面。
PHP能做什么
PHP主要应用于三个领域:
PHP分析器,一个WEB服务器器和一个WEB浏览器。
PHP语法结构
编程语言的词法结构(lexical structure)是指管理如何用语言写程序的基本规则的集合。
用户自定义的函数名或类名都是不区分大小写的,变量区分大小写。这就是说,$name 、$NAME 和$NaMe是三个不同的变量。
PHP用分号来分隔简单的语句。
PHP注释
PHP支持C、C++和Shell脚本风格的注释,如下:
// 单行注释
/* */ 多行注释 (注意:不能嵌套)
# 脚本注释
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
常量
常量是一个固定数值,用一个简单的标识符进行定义,常量默认为大小写敏感。
按照惯例常量标识符总是大写的。
define()用这个函数来定义常量。
string(字符串)常量分为:内置常量和自定义常量。
常数只能包含标量数据(boolean(布尔),integer(整形),float(浮点数))
内置常量:PHP系统提供的在任何页面数值不会改变的常量
PHP_OS:显示服务器的操作系统版本
PHP_VERSION:显示PHP版本
一些常见的系统常量
__FILE__:PHP文件名,假如是引用文件,则显示引用文件名
__LINE__:PHP文件的行数
TRUE FALSE:表示真假的常量
E_ERROR:指明了代码中最近的错误处
E_WARNING:指明了代码中最近的警告处
E_PARSE:分析代码何处有着潜在的问题
E_NOTICE:为发生不寻常但不一定是错误的地方
自定义常量
用define()来定义常量
define(“mycomputer”, “IBM”);
定义常量:mycomputer 常量的值为 IBM
defined(“mycomputer”);
检测常量是否被定义,已定义返回1 否则返回空
变量
PHP 中一个美元符号($)后面跟上一个变量名称,即表示一个变量。变量的名称是对大小写敏感的
< php
$var = ‘Bob';
$Var = ‘Joe';
echo “$var, $Var”; // 输出 “Bob, Joe” 可以同时输出两个变量名
$4site = ‘not yet'; // 非法变量名;以数字开头 变量不能以数字开头
$_4site = ‘not yet'; // 合法变量名;以下划线开头 可以以下划线开头
$i站点is = ‘mansikka'; // 合法变量名; 可以用中文 但是不建议使用
isset($var) //检查变量是否定义
unset($var) //删除变量$var
empty($var) //判断一个变量的值是否存在
echo $var //空
>
可变变量
一个可变变量获取了一个普通变量的值作为这个可变变量的变量名
< php
$a = 'hello'; //普通变量
$$a = 'world'; //可变变量 可变变量用一个普通变量的值作为可变变量的名
echo "$a ${$a}"; //输出:hello world
echo "$a $hello"; //输出:hello world
>
常量和变量不同
常量前面没有美元符号($);
常量只能用 define( ) 函数定义,而不能通过赋值语句;
常量可以不用理会变量范围的规则而在任何地方定义和访问;
常量一旦定义就不能被重新定义或者取消定义;
常量的值只能是标量
数据类型
四种标量类型:
布尔型(boolean)
整型(integer)
浮点型(float)(浮点数,也作double)
字符串(string)
两种复合类型:
数组(array)
对象(object)
最后是两种特殊类型:
资源(resource)
NULL 空
PHP是一种非常弱的类型语言。
在PHP中,变量的类型通常不是由程序员设定的,确切地说,是根据该变量使用的上下文在运行时(即变量的值)决定的。
实例:
< php
$bool = TRUE; // 布尔型
$str = “foo”; // 字符串
$int = 12; // 整型
echo gettype($bool); // 输出 boolean (gettype获取变量的类型)
echo gettype($str); // 输出 string
>
整型
整型值可以用十进制,十六进制或八进制符号指定,前面可以加上可选的符号(- 或者 +)。
< php
$a = 1234; // 十进制数
$a = -123; // 一个负数
$a = 0123; // 八进制数(等于十进制的 83)
$a = 0x1a; // 十六进制数(等于十进制的 26)
>
浮点型
浮点数(也叫浮点数,双精度数或实数)可以用以下任何语法定义:
< php
$a = 1.234;
$a = 1.2e3;
$a = 7E-10;
>
字符串
string是一系列字符。在 PHP 中,字符和字节一样,也就是说,一共有 256 种不同字符的可能性。这也暗示 PHP 对 Unicode 没有本地支持。(关于字符串类型后面专有一章详细讲解)
< php $str = “hello world!”; >
布尔型
这是最简单的类型。boolean 表达了真值,可以为 TRUE 或 FALSE。
当其他类型转换为 boolean类型 时,以下值被认为是FALSE:
布尔值 FALSE
整型值 0(零)
浮点型值 0.0(零)
空白字符串和字符串 "0"
没有成员变量的数组
没有单元的对象(仅适用于 PHP 4)
特殊类型 NULL(包括尚未设定的变量)
所有其它值都被认为是 TRUE(包括任何资源)。
数组
数组是PHP中的一种重要的数据类型。一个标量只能存放一个数据, 而数组可以存放多个数据。
$my=array(‘1',‘2',‘abc',‘d');
对象(Object)
对象是一种高级的数据类型以后会学
资源(Resource)
资源是由专门的函数来建立和使用的
类型强制转换
PHP 中的类型强制转换:在要转换的变量之前加上用括号括起来的目标类型。
允许的强制转换有:
(int), (integer) - 转换成整型
(bool), (boolean) – 转换成布尔型
(float), (double), (real) - 转换成浮点型
(string) - 转换成字符串
(array) - 转换成数组
(object) – 转换成对象
< php
$foo = 10; // $foo is an integer
$bar = (boolean) $foo; // $bar is a boolean
>
PHP是什么PHP: Hypertext Preprocessor,是超文本预处理器的字母缩写是一种广泛应用的开放源码的多用途脚本语言,他可以嵌入到html里,尤其适合WEB开发。
强制类型转换函数
使用函数settype(mixed var, string type)
还有3个更为具体的转换函数:
intval() //转换整型
floatval() //转换浮点型
strval() //转换字符串
< php
$str=“123.9abc”;
$i=intval($str); //转换成整形
$flo=floatval($str); //转换成浮点
$str=strval($flo); //转换成字符串
>
关于变量的常用函数
1、var_dump(mixed var):
查看某个变量或表达式的值和类型。
2、gettype (mixed var):
查看某个变量的类型。
3、is_xxxtype(mixed var):
查看是否是某种类型。格式:is_int()、is_string()、is_null()*
4、settype(mixed var, string type):
将一个变量强制转换为某类型。还可以对其使用强制转换 ,会影响到被转换的值。
类型转化的细节
1.数字(浮点数和整数类型间可以互相转化)
整数转化为浮点型:由于浮点型的精度范围远大于整型,所以转化后的精度不会改变。
浮点型转化为整型:将自动舍弃小数部分,只保留整数部分。如果一个浮点数超过整型数字的有效范围,其结果将是不确定的。
整型的最大值约是2.147e9.
< php
$real_num=3.1e9;
echo $real_num;
echo (int)$real_num; //输出一个不确定的值。
>
因为溢出的部分已经丢失,无法给出一个确切的原始结果。
2.布尔型与NULL
一个布尔型变量可以转化为整型(前面)
NULL值转为字符串, 为空字符“”
字符串
字符串可以转化为数字。转化后的数字是从字符串开始部分的数值型字符串。数值型字符串包括用科学计数法表示的数字。
< php
$number=intval(“5.6abc”); //intval获取变量的整数值
$number=(float)”+5.6abc”;+-为正负
$number=floatval(“-1.2e3f4g5”);
$result=“12.3xy45”-6; =6.3
$result=“xy1234”/5;=0
$result=“1.2.3.4”*5;=6
$result=1+”-1.3e3”;=-1299
>
数组和对象转化为字符串,结果将是”Array”和”Object”.
资源型数据转化为字符串。(Resource id#1)
$fp=fopen(“foo”, “w”);
echo get_resource_type($fp);//输出file 一个文件的资源。
数组
将一个布尔值、数字或字符串转化为数组型数据
将得到一个以上述类型数据元素的数组
将NULL转化为数组,会得到一个空数组
将对象转换成一个数组,所得到的数组的元素为对象的属性,其键名为成员变量名。
PHP的外部变量
PHP的特点之一是可以用简单的方式处理表单数据,获取环境变量。在PHP中,这些外部数据或变量保存在一种特殊的全局数组中。
表单数据
$_POST[“name”];
$_GET[“name”];
$_REQUEST[“name”]; 是上面两种都等到的
print_r($_POST); 打印出外部变量的值
环境变量
PHP中使用$_ENV和$_SERVER获取系统的环境变量。
这些环境变量包含了WEB服务器的一些配置信息,以及浏览器的一些状态信息。
使用函数phpinfo()可以返回更多的环境信息,其中包含了$_ENV和$_SERVER的内容。
程序可以根据不同的环境,如浏览器的类型等,设置不同的输出效果
表达式
表达式是变量、常量和运算符号的组合。
表达式是PHP中的重要内容,PHP中几乎所有的东西都可以称为表达式。
$x=10;
$y=($x=10);
$y+=($x=10);
$z=&$x;
$condition $true_item:false_item;
条件?真:假
引用
引用操作符&可以在关联赋值中使用,就像一个别名,使得变量都指向了内存的相同地址。
< php
$a=5;
$b=&$a;
echo $b; //输出5
$a=7;
echo $b //输出7
>
通过unset($a)重置变量与内存的关联//关联之后两个变数的值是相等的
声明:本文内容来源自网络,文字、图片等素材版权属于原作者,平台转载素材出于传递更多信息,文章内容仅供参考与学习,切勿作为商业目的使用。如果侵害了您的合法权益,请您及时与我们联系,我们会在第一时间进行处理!我们尊重版权,也致力于保护版权,站搜网感谢您的分享!