PHP 是 "PHP Hypertext Preprocessor" 的首字母缩略词。他是一种被广泛使用的开源脚本语言,PHP脚本语言在服务器上执行,由于是不收费的,所有没有成本,可以免费下载使用。
PHP文件能够包含文本、HTML、CSS以及PHP代码。PHP代码在服务器上执行,结果以纯文本返回到浏览器。他的扩展名是.php。
PHP能够生成动态页面内容,能够创建、打开、读取、写入、删除以及关闭服务器上的文件。能够接收表单数据。能够发送并取回cookie。能够添加、删除、修改数据库中的数据。能够限制用户访问网站中的某些页面。能够对数据进行加密。
PHP脚本以<?php 开头,以 ?> 结尾,PHP文件通常包含HTML标签以及一些PHP脚本代码。下面是PHP代码中的几种注释:
// 这是单行注释
# 这也是单行注释
/*
这是多行注释块
它横跨了
多行
*/
在 PHP 中,所有用户定义的函数、类和关键词(例如 if、else、echo 等等)都对大小写不敏感,但是申明的变量对大小写敏感,字母大小写不同在PHP中都代表不同的变量。
PHP的变量:PHP中变量以$开头,类似于JS中的var,其后跟随的是变量名(变量名称必须以字母或者下划线开头,变量名称只能包含字母数字字符和下划线(A-z、0-9),并且大小写不同代表的是不同的变量)。
PHP的作用域:写在函数外面的是global全局变量;反之,写在函数里的是局部变量;如果想让局部变量变成全局,需要在函数申明前加上global;函数中的局部变量是静态(static)的,当执行完函数之后会删除所有变量(当我们不想删除这局部变量时,可以在外部执行一次,这样变量就能被保存出来);
PHP中有一些超全局变量:
1、$GLOBALS
2、$_SERVER 这种超全局变量保存关于报头、路径和脚本位置的信息。
3、$_REQUEST 用于收集 HTML 表单提交的数据。
<html>
<body>
<form action="<?php echo $_SERVER['PHP_SELF'];?>">
<!-- 利用$_SERVER获取当前脚本地址 -->
<input type="text" name="user">
<input type="submit" value="处理数据">
</form>
<?php
if($_REQUEST){
$userName = $_REQUEST['user'];
echo $userName;
}
?>
</body>
</html>
4、$_POST 广泛用于收集提交 method="post" 的 HTML 表单后的表单数据。
<html>
<body>
<form method="POST" action="<?php echo $_SERVER['PHP_SELF'];?>">
<!-- 利用$_SERVER获取当前脚本地址 -->
<input type="text" name="user">
<input type="submit" value="处理数据">
</form>
<?php
if($_POST){
$userName = $_POST['user'];
echo $userName;
}
?>
</body>
</html>
5、$_GET
也可用于收集提交 HTML 表单 (method="get") 之后的表单数据。
6、$_FILES
从客户计算机向远程服务器上传文件。
7、$_ENV
通过环境方式传递给当前脚本的变量的数组。例如当前计算机名称
8、$_COOKIE
变量用于取回 cookie 的值。
9、$_SESSION
存储和取回 session 变量的正确方法是使用 PHP $_SESSION 变量
魔术变量:
__LINE__
返回当前代码在php中的行数,用于调试php脚本;
__FILE__
返回当前文件的完整路径(绝对路径)
__FUNCTION__
返回当前函数的函数名
__CLASS__
返回当前的类名
下面这些关键字都会实现一些功能
and or xor __FILE__ extends __LINE__ array() as break case class const continue declare default die() do echo else elseif empty() enddeclare endfor endforeach endif endswitch endwhile eval() exit() extends for foreach function global if include include_once isset() list() new print require require_once return static switch unset() use var while __FUNCTION__ __CLASS__ __METHOD__
final(PHP 5) php_user_filter(PHP 5) interface(PHP 5) implements(PHP 5) exception(PHP 5) public(PHP 5) private(PHP 5) protected(PHP 5) abstract(PHP 5) clone(PHP 5) try(PHP 5) catch(PHP 5) throw(PHP 5) this(PHP 5 only)
1、echo 或 echo()相同
$a=5;
$b=6;
$arr=array("a"=>10,"b"=>20);
echo $a+$b;//11;
echo $a.$b;//56;
echo "这些数字是{$arr['b']}";
echo "这些数字是".$arr["b"];
2、print 或 print()相同
$a=5;
$b=6;
$arr=array("a"=>10,"b"=>20);
print $a+$b;//11;
print $a.$b;//56;
print "这些数字是{$arr['b']}";
print "这些数字是".$arr["b"];
3、echo和print相同,但是也有不同点
echo - 能够输出一个以上的字符串
echo $a,$b;
print - 只能输出一个字符串,并始终返回 1
echo print $a;//51
先打印print $a,再用echo打印print返回的值
print_r($arr);
只能打印数组
4、var_dump()打印变量的类型和值
$a=5;
$b=6;
$arr=array("a"=>10,"b"=>20);
var_dump($a);
var_dump($arr);
1、条件语句
if 语句 - 如果指定条件为真,则执行代码
if...else 语句 - 如果条件为 true,则执行代码;如果条件为 false,则执行另一端代码
if...elseif....else 语句 - 选择若干段代码块之一来执行
注意elseif没有空格
2、循环语句
switch 语句 - 语句多个代码块之一来执行
while - 只要指定条件为真,则循环代码块
do...while - 先执行一次代码块,然后只要指定条件为真则重复循环
for - 循环代码块指定次数
foreach - 遍历数组中的每个元素并循环代码块
gettype() 返回数据的数据类型
0、判断类型
is_int() 是不是整型;
is_bool()是不是布尔值;
is_string()是不是字符串;
is_array()是不是数组类型;
is_double()是不是浮点数;
1、字符串
字符串可以是引号内的任何文本。您可以使用单引号或双引号
2、整数
整数必须有至少一个数字(0-9)
整数不能包含逗号或空格
整数不能有小数点
整数正负均可
可以用三种格式规定整数:十进制、十六进制(前缀是 0x)或八进制(前缀是 0)
PHP整数在定义的时候判断了以上这些情况,如果满足就确认为整数型
var_dump($x);
$x = -345; // 负数
var_dump($x);
$x = 0x8C; // 十六进制数
var_dump($x);
$x = 047; // 八进制数
var_dump($x);
3、浮点数
浮点数是有小数点或指数形式的数字。
4、逻辑
逻辑是 true 或 false。
5、数组
1、数组在一个变量中存储多个值。
2、数组长度
count()
3、索引数组 - 带有数字索引的数组
$cars=array("Volvo","BMW","SAAB");
$cars[0]="Volvo";
4、关联数组 - 带有指定键的数组
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
$age['Peter']="35";
5、多维数组 - 包含一个或多个数组的数组
$arr=array(array(1,2,3),array(4,5,6));
print_r($arr);
6、数组的遍历
$arr=array(1,2,3,4,5,6);
for($i=0;$i<count($arr);$i++){
echo $arr[$i]."</br>";
}
$arr=array(1,2,3,4,5,6);
foreach($arr as $value){
echo $value."</br>";
}
7、数组的排序
sort() - 以升序对数组排序
rsort() - 以降序对数组排序
asort() - 根据值,以升序对关联数组进行排序
ksort() - 根据键,以升序对关联数组进行排序
arsort() - 根据值,以降序对关联数组进行排序
krsort() - 根据键,以降序对关联数组进行排序
8、JSON类型数据
json_encode()
json_decode()
6、对象
class Ball{
var $r=10;
function Ball($r){
$this->r=$r;
}
function play(){
return $this->r;
}
}
$ball=new Ball(10);
echo $ball->play();
7、NULL
特殊的 NULL 值表示变量无值。NULL 是数据类型 NULL 唯一可能的值。
NULL 值标示变量是否为空。也用于区分空字符串与空值数据库。
可以通过把值设置为 NULL,将变量清空
菜鸡第一次写博客,好好学习天天向上~~~~~~~