php基础入门知识

导语:php入门必须先了解一些最基础的知识,下面就由小编为大家介绍一下php基础入门知识,欢迎大家阅读

php基础入门知识

  一、数据类型:字符串、整数、浮点数、逻辑、数组、对象、NULL

var_dump -- 打印变量的相关信息

1、字符串:字符串是字符序列,双引号单引号都可以。

(1)字符串函数

①strlen()函数 返回字符串长度

echostrlen("1234"); //4

②strpos()函数 检索字符串 如果没有找到则返回false("")

echo strpos("Helloworld!","world"); //6

(2)PHP 字符串运算符: . 串接 .=串接赋值(就跟x+=2一样)

递增/递减运算符: 和c语言一样

PHP 比较运算符:

=== 全等(完全相同) $x=== $y 如果 $x 等于 $y,且它们类型相同,则返回 true。

!== 不全等(完全不同) $x !==$y 如果 $x 不等于 $y,或它们类型不相同,则返回 true。

PHP 逻辑运算符:

与:and &&

或:or ||

异或:xor $x xor $y 如果 $x 和 $y 有且仅有一个为 true,则返回 true。

非:!

2、整数:整数必须有至少一个数字(0~9),整数不能包含逗号火空格,整数不能有小数点,整数正负均可

可以用三种格式规定整数:十进制、十六进制(前缀是:0x)、八进制(前缀是:0)

3、浮点数:小数 $x =2.4e3; 2400

4、逻辑:就是bool类型:true、false

5、数组:在一个变量中存储多个值

(1)在 PHP 中,有三种数组类型:

1)索引数组 - 带有数字索引的数组count() 函数用于返回数组的长度(元素数):

$cars=array("Volvo","BMW","SAAB");

echo"I like " . $cars[0] . ", " . $cars[1] . " and ". $cars[2] . ".";

count($cars); //3

//遍历数组

$arrlength=count($cars);

for($x=0;$x<$arrlength;$x++){

echo $cars[$x];

echo "";

}

2)关联数组 - 带有指定键的数组

两种创建关联的方法:

①$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

$age['Peter']="35";

$age['Ben']="37";

$age['Joe']="43";

//遍历数组:其实和js中的foreach很像,只是在as后边对照着""=>""这样的结构添加了变量而已,再拿出来用就好了

$age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43");

foreach($ageas $xx=>$x_values){

echo "key=" . $xx.",value=".$x_values."";

}

3)多维数组 - 包含一个或多个数组的数组

(2)数组排序:数组中的元素能够以字母或数字顺序进行升序或降序排序。(这里的排序直接就把数据的内容就改变了)

(索引数组)

sort() - 以升序对数组排序

rsort() - 以降序对数组排序

(关联数组)

asort() - 根据值,以升序对关联数组进行排序

ksort() - 根据键,以升序对关联数组进行排序

arsort() - 根据值,以降序对关联数组进行排序

krsort() - 根据键,以降序对关联数组进行排序

(3)数组运算符

运算符 名称 例子 结果

+ 联合 $x + $y $x和$y 的联合(但不覆盖重复的键)

== 相等 $x == $y 如果 $x 和 $y 拥有相同的键/值对,则返回 true。

=== 全等 $x === $y 如果 $x 和 $y 拥有相同的键/值对,且顺序相同类型相同,则返回 true。

!= 不相等 $x!= $y 如果 $x 不等于 $y,则返回 true。

<> 不相等 $x<> $y 如果 $x 不等于 $y,则返回 true。

!== 不全等 $x!== $y 如果 $x 与 $y 完全不同,则返回 true。

6、对象:对象是存储数据和有关如何处理数据的信息的数据类型

在php中,必须明确地生命对象。

首先必须声明对象的类,试用class关键词。类是包含属性和方法的结构

然后再对象类中定义数据类型,然后在该类的实例中使用此数据类型

classCar

{

var $color;

function Car($color ="green"){

$this->color = $color;

}

function what_color(){

return $this->color;

}

}

functionprint_vars($obj) {

foreach (get_object_vars($obj) as $prop=> $val) {

echo " $prop = $val";

}

}

//instantiate one object

$herbie= new Car("whites");

//show herbie properties

echo"herbie: Properties";

print_vars($herbie);

7、NULL值: 特殊的 NULL 值表示变量无值。NULL 是数据类型 NULL 唯一可能的值。可以通过把值设置为 NULL,将变量清空

  二、常量:常量是单个值的标识符(名称)。在脚本中无法改变该值。

有效的常量名以字符或下划线开头(常量名称前面没有 $ 符号)。

注释:与变量不同,常量贯穿整个脚本是自动全局的。

如需设置常量,请使用 define() 函数 - 它使用三个参数:

首个参数定义常量的名称

第二个参数定义常量的值

可选的第三个参数规定常量名是否对大小写不敏感。默认是 false:大小写敏感,true:大小写不敏感。

define("corlor","yellor");

echocorlor; //yellor

echoCorlor; //Corlor

define("corlor","yellor",true);

echocorlor; //yellor

echoCorlor; //yellor

  三、运算符:

$x=10;

$y=6;

echo($x + $y),""; // 输出 16

echo($x - $y),""; // 输出 4

echo($x * $y),""; // 输出 60

echo($x / $y),""; // 输出 1.6666666666667

echo$x % $y,""; // 输出 4

?>

  四、条件语句:

if(){}

if(){}else{}

if(){}elseif(){}else{} //不一样的地方else和if可以拼接起来,分开也是可以的

switch($x)

{

case1:echo"1";break;

case2:echo"2";break;

default:echo"no";

}

  五、循环:

while- 只要指定条件为真,则循环代码块

while(条件为真){

}

e- 先执行一次代码块,然后只要指定条件为真则重复循环

do{

要执行的代码;

}while (条件为真);

for- 循环代码块指定次数

for($x=0; $x<=10; $x++) {

echo "数字是:$x

";

}

foreach- 遍历数组中的每个元素并循环代码块(只适用于数组)

$colors= array("1","2","3");

foreach($colors as $value) {

echo "$value";

}

  六、函数:函数名对大小写不敏感,所传的参数对大小写还是很敏感的

语法:

functionfunctionName($A,$B){

}

默认参数设置:如果不传参数的话,就会取默认参数,但是没有默认参数的时候,就必须传参,否则会报错

functionfamilyName($fname="儿子",$name="孙子") {

echo "$fname $name Zhang";

}

familyName("Li","maozi");

familyName("Li");

familyName();

?>

返回:

Li maozi Zhang

Li 孙子 Zhang

儿子 孙子 Zhang

有返回值的函数

functionsum($x,$y) {

$z=$x+$y;

return $z;

}

  七、PHP 全局变量 - 超全局变量

PHP 中的许多预定义变量都是“超全局的”,这意味着它们在一个脚本的全部作用域中都可用。在函数或方法中无需执行 global $variable; 就可以访问它们。

这些超全局变量是:

$GLOBALS

$_SERVER

$_REQUEST

$_POST

$_GET

$_FILES

$_ENV

$_COOKIE

$_SESSION

1、$GLOBALS— 引用全局作用域中可用的全部变量

$GLOBALS 这种全局变量用于在 PHP 脚本中的任意位置访问全局变量(从函数或方法中均可)。

PHP 在名为 $GLOBALS[index] 的数组中存储了所有全局变量。变量的名字就是数组的键。

下面的例子展示了如何使用超级全局变量 $GLOBALS:

$x= 75;

$y= 25;

functionaddition() {

$GLOBALS['z'] = $GLOBALS['x'] +$GLOBALS['y'];

}

addition();

echo$z;

?>

由于 z 是 $GLOBALS 数组中的变量,因此在函数之外也可以访问它。

$_SERVER

$_SERVER 这种超全局变量保存关于报头、路径和脚本位置的'信息。

下面的例子展示了如何使用 $_SERVER 中的某些元素:

访问元素众多:_

$_REQUEST 用于收集 HTML 表单提交的数据。

表单数据将发送到

标签的 action 属性中指定的脚本文件。如果您需要使用其他的 PHP 文件来处理表单数据,请修改为您选择的文件名即可。然后,我们可以使用超级全局变量 $_REQUEST 来收集 input 字段的值

Name:

$name= $_REQUEST['fname'];

echo$name;

?>

$_POST

PHP $_POST 广泛用于收集提交 method="post" 的 HTML 表单后的表单数据。$_POST 也常用于传递变量。

下面的例子展示了一个包含输入字段和提交按钮的表单。当用户点击提交按钮来提交数据后,表单数据会发送到

标签的 action 属性中指定的文件。在本例中,我们指定文件本身来处理表单数据。如果您希望使用另一个 PHP 页面来处理表单数据,请用更改为您选择的文件名。然后,我们可以使用超全局变量 $_POST 来收集输入字段的值:

Name:

$name= $_POST['fname'];

echo$name;

?>

$_GET

PHP $_GET 也可用于收集提交 HTML 表单 (method="get") 之后的表单数据。

$_GET 也可以收集 URL 中的发送的数据。

测试 $GET

当用户点击链接 "Test $GET",参数 "subject" 和 "web" 被发送到 "test_",然后您就能够通过 $_GET 在 "test_" 中访问这些值了。

下面的例子是 "test_" 中的代码

echo"Study " . $_GET['subject'] . " at " . $_GET['web'];

?>