PHP学习笔记1

1.什么是PHP?

  • Hypertext Preprocessor(超文本预处理语言)。

  • 是脚本语言。

  • 是最流行的网站开发语言。

2.PHP能做什么?

  • 可以生成动态页面内容。

  • 可以创建、打开、读取、写入、关闭服务器上的文件。

  • 可以手机表单数据。

  • 可以发送和接收cookies。(储存在用户本地终端上的数据)

  • 可以添加、删除、修改数据库中的数据

  • 可以限制用户访问一些页面。

  • 可以加密数据

3.PHP基本语法

  • PHP脚本以<?php开始,以?>结束。

  • PHP文件的默认扩展名为“.php”。

  • PHP用分号来分割语句。

  • 变量以$开始,后面跟着变量名称:

1 $first = "Hello World";
  • PHP中的注释:

    a.单行注释:

1 //、#

    b.多行注释:

1 /*...*/

 

4.PHP变量作用域

变量的作用域是脚本中可被引用的部分。

  • local

  • global

  • static

  • parameter

5.局部和全局作用域

 所有在函数外部定义的变量,拥有全局作用域。除了函数外,全局变量可以被脚本中的任何部分访问,但是要在一个函数中访问一个全局变量,需要使用global关键字。

 1 <?php
 2 $x=5;
 3 $y=10;
 4  
 5 function myTest()
 6 {
 7     global $x,$y;
 8     $y=$x+$y;
 9 }
10  
11 myTest();
12 echo $y; // 输出 15
13 ?>

PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。 index 保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。

 1 <?php
 2 $x=5;
 3 $y=10;
 4  
 5 function myTest()
 6 {
 7     $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
 8 } 
 9  
10 myTest();
11 echo $y;  // 输出15
12 ?>

6.Static作用域

当一个函数完成时,所有变量通常都会被删除,但是加上static可以使其完成运算之后被保留下来。

 1 <?php
 2 function myTest()
 3 {
 4     static $x=0;
 5     echo $x;
 6     $x++;
 7 }
 8  
 9 myTest();      // 每次调用时变量将保持前一次的值
10 myTest();      // 该变量仍然是局部变量
11 myTest();      // 输出012
12 ?>

 

7.参数作用域

参数是通过调用代码将值传递给函数的局部变量。

参数是在参数列表中声明的,作为函数声明的一部分:

1 <?php
2 function myTest($x)
3 {
4     echo $x;
5 }
6 myTest(5);
7 ?>

 

8.输出方式

两个基本输出方式:

echo:可以输出一个或者多个字符串。(输出速度快,没有返回值)

1 <?php
2 echo "<h2>It's a good story</h2>";        //可以加html标签
3 echo ("How's it going?");                 //echo()=echo
4 ?>

print:只允许输入一个字符串,返回值总为1。

 

9.PHP常量

常量是一个简单值得标识符,在脚本中不能改变。

设置语法:

1 bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )

三个参数:

  • name:必选,常量名,也是标识符。

  • value:必选,常量的值。

  • case_insensitive:可选。如果设置为true,则大小写不敏感,默认敏感。

1 <?php
2 define ("Alcohol","Pads");   //大小写敏感
3 echo Alcohol;            //输出Pads
4 echo '</br>';
5 echo alcohol;            //输出alcohol
6 ?>
1 <?php
2 define ("NIVEA","protection",true);     //大小写不敏感
3 echo NIVEA;
4 echo "</br>";
5 echo nivea;             //都输出protection
6 ?>

 

10.PHP并置运算符

PHP只有一个并置运算符,“.”:(用于把字符串连接起来)

1 <?php
2 define ("NIVEA","protection");
3 
4 $txt1="protect your skin";
5 $txt2="from the sunlight!";
6 
7 echo nivea . " " . ":" . " " . $txt1 . " " . $txt2;
8 //nivea : protect your skin from the sunlight!
9 ?>

 

 

11.strlen(),strpos()函数

strlen():计算字符串长度。

strpos():计算字符串出现的第一个匹配位置

1 <?php 
2 echo strpos("Hello world!","world"); 
3 ?>

 

12.PHP递增、递减运算符

 

 

13.比较运算符

 

注:var_dump()函数不仅可以返回值,还可以返回值的类型。

 

14.数组运算符

 

 

15.三元运算符

1 (expr1) ? (expr2) : (expr3)

对 expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值为 expr3。

自 PHP 5.3 起,可以省略三元运算符中间那部分。表达式 expr1 ?: expr3 在 expr1 求值为 TRUE 时返回 expr1,否则返回 expr3。

 1 <?php
 2 $name = "Annika";
 3 //普通写法
 4 $username = isset($name) ? $name : 'no name';
 5  // PHP_EOL是一个兼容不同平台的换行符,提高代码可移植性
 6 echo $username, PHP_EOL;         
 7 
 8 //5.3之后的写法
 9 $username = $name ?: 'no name';
10 echo $username;
11 ?>

在 PHP7+ 版本多了一个 NULL 合并运算符 “??”:

1 <?php
2 // 如果 $_GET['user'] 不存在返回 'nobody',否则返回 $_GET['user'] 的值
3 $username = $_GET['user'] ?? 'nobody';
4 ?>

 

 

16.运算符有优先级,但是用括号可以增加代码可读性

 1 <?php
 2 // 优先级: &&  >  =  >  and
 3 // 优先级: ||  >  =  >  or
 4  
 5 $a = 3;
 6 $b = false;
 7 $c = $a or $b;
 8 var_dump($c);          // 这里的 $c 为 int 值3,而不是 boolean 值 true
 9 $d = $a || $b;
10 var_dump($d);          //这里的 $d 就是 boolean 值 true 
11 ?>

 

posted @ 2018-03-10 19:50  Annikaa  阅读(132)  评论(0编辑  收藏  举报