php 基础 PHP学习一(基础)
人气:0想了解PHP学习一(基础)的相关内容吗,在本文为您仔细讲解php 基础的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点: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
>
强制类型转换函数
使用函数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)重置变量与内存的关联//关联之后两个变数的值是相等的
加载全部内容