zoukankan      html  css  js  c++  java
  • PHP学习—了解篇

    了解PHP

    • 了解神器:PhpStudy 一键搭建PHP环境

    语法:

    ​ PHP是一种可以嵌套在HTML页面的脚本语言

    • 嵌套HTML文件:

      <!DOCTYPE html>
      <html>
          <head>
              <title>PHP</title>
          </head>
          <body>
          	<?php
      			// php代码;
      		?>
          </body>
      </html>
      

      PHP同时也可以以 “*.php” 文件单独保存和被访问,但是在php文件中,也必须以 “< ? " 开头, ”?>”结束!php代码只会在这里被执行和解析

    • PHP对大小写敏感识别

    • PHP支持目前主流的三种注释:双斜杠,“#”号,多行注释

    变量:

    变量规则:

    • 变量以$符号开头

    • 变量名必须字母或下划线开头,由数字、字母、下划线组成变量名

    • PHP没有创建变量名的命令,变量赋值的过程就是创建的过程

    作用域:

    • local(局部):只允许自己语法结构的语句访问(函数内部声明)

    • global(全局):允许当前PHP程序中所有的语法结构内的语句访问(函数之外声明)

      全局变量访问:

      ​ global关键字用于在函数内访问全局变量,在内部函数中访问全局变量必须在访问前使用global关键字。

      <?php
          $x = 5 ; 
      	$y = 10 ; 
      	function myTest(){
              global $x , $y ;
              $y = $x + $y ;
          }
      	myTest();
      	echo $y ;
      ?>
      
    • static(静态):变量执行的结果,下一回合不复位

      静态访问:

      ​ 在变量声明时,添加static声明,就可以在多次访问该变量而变量的变化不复位

      <?php
          function myTest(){
          static $x = 0 ; 
          echo $x ; 
          $x ++ ; 
      	}
      	myTest();
      	myTest();
      	myTest();
      ?>
      

    输出:

    echo输出:

    • 可以输出一个以上的字符串
    <?php 
    	echo '<p>Hello,World!</p>';
     ?>
    

    print输出:

    数据类型:

    字符串:

    • 字符串是字符序列,引号内的文本都属于字符串

    整数:

    • 没有小数的数字组合(包括负数)

    浮点数:

    • 不是整数的所有数字组合,以及科学计数

    布尔逻辑数:

    • true和false

    数组:

    • 一个变量中存储一个或多个值

    • 数组创建使用关键字“array”

      <?php
          $cars = array ("HUAWEI","China","GO!")s
          var_dump($cars);//返回数组的类型和值
      ?>
          // 运行结果
      // “array(3) { [0]=> string(6) "HUAWEI" [1]=> string(5) "China" [2]=> string(3) "GO!" }”
      

      关键字:var_dump 返回数组的大小,每一个参数值的数据类型等信息

    对象:

    • 使用 “class” 关键字声明对象数据类型

      <?php
          class Car {
          var $color ; 
          function Car($color = "green") {
              $this -> color = $color;
          }
          function what_color(){
              return $this->color;
          }
      	}
      ?>
      

    NULL值:

    • 表示变量为空值(将值设置为null,代表清空变量值)

    判断数据类型:

    var_dump():
    • 打印变量的类型和值

    • 语法:void var_dump(mixed $expression)

    • 无返回值

    iS函数:
    • is_bool():判断是否为布尔值
    • is_float():判断是否为浮点型
    • is_int():判断是否为整型
    • is_numeric():判断是否为数值型
    • is_string():判断是否为字符串
    • is_array():判断是否为数组
    • is_object():判断是否为对象
    • is_null():判断是否为空
    • is_resource():判断是否为资源类型
    isset():
    • 检查变量是否存在
    • 返回:变量存在返回 true
    empty():
    • 检查变量是否为空(isset()只可以检测是否存在)
    • 返回:变量存在且非空 返回false(var = null 才认为是空)

    PHP系统常量:

    系统常量 说明
    __ FILE __ PHP程序文件名
    __ LINE __ PHP程序当前行号
    PHP_VERSION PHP程序版本号
    PHP_OS 操作系统名称
    TRUE
    FALSE
    E_ERROR 最近的错误
    E_WARNING 最近的警告
    E_PARSE 解析语法潜在问题
    E_NOTICE 不正常的错误

    运算符:

    算术运算符:

    // + - * / % ++ --

    加 减 乘 除 模 自加 自减

    字符串运算符:

    字符串连接符: .(点)

    连接等于:. = (点 等于)

    赋值运算符:

    赋值: =

    减等: -=

    加等: +=

    乘等:*=

    除等:/=

    取余等:%=

    比较运算符:

    大于、小于、大于等于、小于等于、等于、不等于

    全等于:===

    不全等:! ==

    逻辑运算符:

    逻辑与: and &&

    逻辑或: or ||

    逻辑非: not !

    三元运算符:

    条件运算符: ?:

    错误抑制操作符:

    符号: @
    在可能会产生错误的语句前使用,可以抑制报错

    命令执行操作符:

    符号:* (反单引号) 》和 ~ 在同一个键位
    该操作符可以在OS上直接执行操作命令(echo输出命令后才可以在系统上执行)

    控制结构:

    if分支条件:

    Switch条件语句:

    While循环:

    do…while循环:

    for循环:

    控制函数:

    略(break/continue)

    数值的传递:*

    赋值传递:(两个都不同的内存地址)

    ​ $a = $b ;

    引用赋值:(两个变量同一个地址)

    ​ $a = &$b ;

    数组:

    数组类型:

    • 枚举数组:索引下标为整数
    • 关联数组:索引下标为字符串
    • 多维数组:数组元素是数组

    创建数组:

    • 关键字:array() 创建数组

    • 标识符:

      • $arr[key] = value ;
      • $arr[] = value ;

    数组函数:

    unset():删除数组元素
    foreach():遍历数组元素
    array_shift():
    • 将数组的第一个单元格移出并作为结果返回
    array_pop():
    • 将数组的最后一个单元元素移出并返回
    array_unshift():
    • 在数组最前面插入一个或多个元素
    array_push():
    • 在数组的尾部插入一个或多个元素
    array_values():
    • 返回数组中所有的值并建立数字索引
    count():计算数值属性个数
    array_sum():计算数值的和
    array_reverse():返回一个反转数组
    list():将数组元素赋值给变量
    <?php 
    	$IntArray = array(2,5,9,13,7,9,21,7,9,24,38) ;
    	$MAX = $IntArray[0];
    	$MIN = $IntArray[0];
    	$MAX_i = $MIN_i = 0;
    	for ($i=0; $i < count($IntArray) ; $i++) { 
    		if ($MAX < $IntArray[$i]) {
    			$MAX = $IntArray[$i] ; 
    			$MAX_i = $i ;
    		}
    		if ($MIN > $IntArray[$i]) {
    			$MIN = $IntArray[$i] ;
    			$MIN_i = $i ; 
    		}
    	}
    	echo "Array_MAX:".$MAX."<br />MAX_i=".$MAX_i ;
    	echo "<br /><br />";
    	echo "Array_MIN:".$MIN."<br />MIN_i=".$MIN_i ;
    	echo "<hr />";
    	// 位置交换
    	echo "位置交换前:".print_r($IntArray) ; 
    	$M = $IntArray[$MIN_i] ;
    	$IntArray[$MIN_i] = $IntArray[$MAX_i] ; 
    	$IntArray[$MAX_i] = $M ;
    	echo "<br />";
    	echo "位置交换后:".print_r($IntArray) ;
    	echo "<hr />";
    	// 反转数组
    	echo print_r(array_reverse($IntArray));
     ?>
    

    超全局变量

    元素/代码 描述
    $_SERVER['PHP_SELF'] 返回当前执行脚本的文件名。
    $_SERVER['GATEWAY_INTERFACE'] 返回服务器使用的 CGI 规范的版本。
    $_SERVER['SERVER_ADDR'] 返回当前运行脚本所在的服务器的 IP 地址。
    $_SERVER['SERVER_NAME'] 返回当前运行脚本所在的服务器的主机名(比如 www.w3school.com.cn)。
    $_SERVER['SERVER_SOFTWARE'] 返回服务器标识字符串(比如 Apache/2.2.24)。
    $_SERVER['SERVER_PROTOCOL'] 返回请求页面时通信协议的名称和版本(例如,“HTTP/1.0”)。
    $_SERVER['REQUEST_METHOD'] 返回访问页面使用的请求方法(例如 POST)。
    $_SERVER['REQUEST_TIME'] 返回请求开始时的时间戳(例如 1577687494)。
    $_SERVER['QUERY_STRING'] 返回查询字符串,如果是通过查询字符串访问此页面。
    $_SERVER['HTTP_ACCEPT'] 返回来自当前请求的请求头。
    $_SERVER['HTTP_ACCEPT_CHARSET'] 返回来自当前请求的 Accept_Charset 头( 例如 utf-8,ISO-8859-1)
    $_SERVER['HTTP_HOST'] 返回来自当前请求的 Host 头。
    $_SERVER['HTTP_REFERER'] 返回当前页面的完整 URL(不可靠,因为不是所有用户代理都支持)。
    $_SERVER['HTTPS'] 是否通过安全 HTTP 协议查询脚本。
    $_SERVER['REMOTE_ADDR'] 返回浏览当前页面的用户的 IP 地址。
    $_SERVER['REMOTE_HOST'] 返回浏览当前页面的用户的主机名。
    $_SERVER['REMOTE_PORT'] 返回用户机器上连接到 Web 服务器所使用的端口号。
    $_SERVER['SCRIPT_FILENAME'] 返回当前执行脚本的绝对路径。
    $_SERVER['SERVER_ADMIN'] 该值指明了 Apache 服务器配置文件中的 SERVER_ADMIN 参数。
    $_SERVER['SERVER_PORT'] Web 服务器使用的端口。默认值为 “80”。
    $_SERVER['SERVER_SIGNATURE'] 返回服务器版本和虚拟主机名。
    $_SERVER['PATH_TRANSLATED'] 当前脚本所在文件系统(非文档根目录)的基本路径。
    $_SERVER['SCRIPT_NAME'] 返回当前脚本的路径。
    $_SERVER['SCRIPT_URI'] 返回当前页面的 URI。

    函数:

    • 关键字:function name() { …… }

    函数参数:

    • 值传递参数:

      在函数调用的时候,允许传递参数值给函数,函数可以自由使用参数进行操作

    • 引用传递参数:

      如果希望函数可以修改参数值,可以使用引用参数进行传递

      引用传递,只需要在参数前加上 “&” 符号就可以

      $arr = array(1,2,3,4);
      function addElement(&$arr){
          $arr[count($arr)] = 100;
          print_r($arr);   //在函数内输出$arr
      }
      addElement($arr);
      print_r($arr);  //在函数外输出
      
    • 默认值传递:

      function hobby($who,$style=‘运动’){
          echo “$who 喜欢 $style”;
      }
      hobby(“张三”,“唱歌”);
      hobby(“张三”);
      
    • global关键字:

      引用函数外部的参数(引用传递性质的参数)

      $name = "Mary";//初始化变量
      function getName(){
          global $name; //引入外部的变量
          echo "我的名字叫:$name";
      }
      getName();
      

    内置函数:

    • echo语句:输出

    • print语句:输出

    • include语句:包含并运行指定文件

    • require语句:包含并运行指定文件

  • 相关阅读:
    《30天自制操作系统》17_day_学习笔记
    《30天自制操作系统》18_day_学习笔记
    湖大OJ-实验E----可判定的DFA的空问题
    湖大OJ-实验C----NFA转换为DFA
    《30天自制操作系统》16_day_学习笔记
    《30天自制操作系统》19_day_学习笔记
    《30天自制操作系统》15_day_学习笔记
    《30天自制操作系统》14_day_学习笔记
    [Leetcode Week11]Kth Largest Element in an Array
    [Leetcode Week10]Minimum Time Difference
  • 原文地址:https://www.cnblogs.com/wangyuyang1016/p/11449246.html
Copyright © 2011-2022 走看看