PHP 文件能够包含文本、HTML、CSS 以及 PHP 代码,PHP 代码在服务器上执行,而结果以纯文本返回浏览器。
1.变量的定义
(1).$用来定义变量。
<?php
$x=5;
$y=6;
$z=$x+$y;
echo $z;
?>
(2).变量的作用域
PHP 有三种不同的变量作用域:
local(局部)
global(全局)
static(静态)
函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问。
函数内部声明的变量拥有 LOCAL 作用域,只能在函数内部进行访问。
global 关键词
用于访问函数内的全局变量。
<?php
$x=5;
$y=10;
function myTest() {
global $x,$y;
$y=$x+$y;
}
myTest();
echo $y; // 输出 15
?>
PHP 同时在名为 $GLOBALS[index] 的数组中存储了所有的全局变量。下标存有变量名。
<?php
$x=5;
$y=10;
function myTest() {
$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
}
myTest();
echo $y; // 输出 15
?>
static 关键词
通常,当函数完成/执行后,会删除所有变量。有时我需要不删除某个局部变量。要完成这一点,在首次声明变量时使用 static 关键词:
<?php
function myTest() {
static $x=0;
echo $x;
$x++;
}
myTest();
myTest();
?>
然后,每当函数被调用时,这个变量所存储的信息都是函数最后一次被调用时所包含的信息。
注释:该变量仍然是函数的局部变量。
(3).echo 和 print 之间的差异:
echo - 能够输出一个以上的字符串
print - 只能输出一个字符串,并始终返回 1
2.数据类型
字符串、整数、浮点数、逻辑、数组、对象、NULL。
var_dump()会返回变量的数据类型和值:
<?php
$x = 10.365;
var_dump($x);//float(10.365)
$cars=array("Volvo","BMW","SAAB");
var_dump($cars);//array(3) { [0]=> string(5) "Volvo" [1]=> string(3) "BMW" [2]=> string(4) "SAAB" }
$x=null;
var_dump($x);//NULL
?>
对象:
在 PHP 中,必须明确地声明对象。
首先我们必须声明对象的类。对此,我们使用 class 关键词。类是包含属性和方法的结构。
然后我们在对象类中定义数据类型,然后在该类的实例中使用此数据类型:
<?php
class Car
{
var $color;
function Car($color="green") {
$this->color = $color;
}
function what_color() {
return $this->color;
}
}
?>
3.字符串函数
strlen() 函数返回字符串的长度;
strpos() 函数用于检索字符串内指定的字符或文本。
如果找到匹配,则会返回首个匹配的字符位置。如果未找到匹配,则将返回 FALSE。
更多函数:http://www.w3school.com.cn/php/php_ref_string.asp
4.常量的定义
定义常量用 define() 函数 ,有三个参数:
首个参数定义常量的名称
第二个参数定义常量的值
可选的第三个参数规定常量名是否对大小写不敏感。默认是 false。
<?php
define("GREETING", "Welcome to W3School.com.cn!");
echo GREETING;
?>
5.运算符与循环语句与java类似
6.函数
在定义参数时可以设置一个默认值,也可以不设。返回用return。
<?php
function setHeight($minheight=50) {
echo "The height is : $minheight <br>";
}
setHeight(350);
setHeight(); // 将使用默认值 50
?>
7.数组
定义数组用Array,有三种数组类型:
索引数组 -带有数字索引的数组
关联数组 - 带有指定键的数组
多维数组 - 包含一个或多个数组的数组
获得数组的长度 - count() 函数
count() 函数用于返回数组的长度(元素数):
<?php
$cars=array("Volvo","BMW","SAAB");
echo count($cars);
?>
数组排序的函数
sort() - 以升序对数组排序//sort($cars);
rsort() - 以降序对数组排序
asort() - 根据值,以升序对关联数组进行排序
ksort() - 根据键,以升序对关联数组进行排序
arsort() - 根据值,以降序对关联数组进行排序
krsort() - 根据键,以降序对关联数组进行排序
(1)索引数组
有两种创建索引数组的方法:
索引是自动分配的(索引从 0 开始):
$cars=array("Volvo","BMW","SAAB");
或者也可以手动分配索引:
$cars[0]="Volvo";
$cars[1]="BMW";
$cars[2]="SAAB";
(2)关联数组
关联数组是使用您分配给数组的指定键的数组。
有两种创建关联数组的方法:
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
或者:
$age['Peter']="35";
$age['Ben']="37";
$age['Joe']="43";
(3)多维数组:二维数组,三维数组。。。