0.2 PHP 基础入门


0.2 PHP 基础入门_第1张图片
流程.png
基础

  • PHP 语言的标记。
  • 标准形式:
。
?>
  • 标准形式:

  • 短标签:

  • 书写规则。
  • 语句结束符,分号:
     php 标记中最后一个分号可省略;
     php 结束标记 ?> 省略的情况下,最后一个分号不可省略;
  • 区分大小写:
类型 大小写
变量 区分
常量 - 通常情况下区分
- 可设定为不区分(不推荐)
函数 不区分
关键字 不区分
变量

  • 常规变量。
  • 声明变量:必须以 $ 开头,其后是变量的名称。 $name //√
    1. 变量名:必须以字母或下划线开头。 $name $_name //√
    2. 变量名:不能以数字开头。 $123 //×
    3. 变量名:只能包含字母数字字符和下划线。A-z 0-9 _
    4. 大小写敏感。 $y != $Y
    5. 在代码中,只要出现 $ 符号,就会被识别为变量:
    echo "¥人名币,$美元"; //$美元 会被识别为变量!
    ▪ PHP 中变量赋初值就是定义变量,不支持 JS 中定义但不赋值的语法。
  • 命名规则:
    1. 驼峰命名法:name, myName, myFatherName
    2. 帕斯卡命名法:Name, MyName, MyFatherName
    3. 下划线间隔法:name, my_name, my_father_name
  • 传值方式:值传递、引用传递。
    1. 传值的方式不仅适用变量,同样适用于同等含义的语句:函数的参数。
    2. 默认为值传递,使用引用传递的时,需要引用符号:&。
  • 操作变量。
  • 判断:通过 isset() 函数判断变量是否存在。
    1. 存在:返回 true,不存在:返回 false。
    2. 变量值为 null 时,也会返回 false。
  • 删除:通过 unset() 函数销毁定义的变量。
    unset() 的运行机制是断开变量名与内存中变量数据之间的关联,并将内存中的变量交还给内置的内存维护列表中。
  • 特殊变量。
  • 可变变量:指变量的嵌套,这是 php 中特殊的语法,在其他语言中很少见。
$a= "abc";  //普通变量
$abc= 10;  //普通变量
echo $$a;  //可变变量  可等同理解为 echo $a $abc
  • 预定义变量:又称为超全局变量。
    $_GET, $_POST, $_SERVER, $_REQUEST, $_GLOBALS, $_COOKIE, $_SESSION....
  • 作用域:
  • 局部作用域:只能在所定义的函数范围内使用。
  • 全局作用域:在函数的“外部”范围使用。
  • 超全局作用域:就是在函数的内部和外部都可以使用。
  • 静态局部作用域:比局部作用域多一个特征,数据能够在函数退出后仍然保持不丢失。
    注——PHP中,局部和全局作用域是不重叠的。
    注——JS中,全局作用域包含局部作用域。
预定义变量

  • $_GET 变量(数组):用于收集来自 method="get" 的表单中的值。
  • 页面提交:
Name: Password:
  • 链接提交:
 sometext 

  • 属性方法:

  • 函数方法:

  • 以上几种方法提交过来的数据是一样的。

  • 综合示例:HTML 部分。
用户名: 密 码: 爱 好:足球 篮球 排球

点击跳转
location.href
location.assign

PHP 代码:

";
        echo "
";
        var_dump($_GET);
        echo "
"; //使用 var_dump 可以完整的打印 $_GET。 ?>
  • $_POST 变量(数组):类似 $_GET,详细的区别可以查看 这里。
    post 只能通过表单提交数据:

PHP 代码:


  • $_REQUEST 变量(数组):包含了 $_GET、$_POST,可以获取两种数据来源。
    HTML 代码:

PHP 代码:

 string(2) "11" ["age"]=> string(2) "22" }
echo '
'; var_dump($_GET); //array(2) { ["a"]=> string(3) "998" ["age"]=> string(2) "10" } echo '
'; var_dump($_REQUEST); //array(3) { ["a"]=> string(3) "998" ["age"]=> string(3) "22" //["name"]=> string(3) "11" } ?>
  • $_REQUEST 可以同时接受两种数据,但是同名的数据会被覆盖掉:age
    默认的存储顺序是 1.GET 2.POST,代表同名情况下 GET 会被覆盖。
    可以在 php.ini 配置文件中修改顺序: request_order = "GP";//默认
  • $_SERVER 变量(数组):存储了服务器 or 客户端的一些请求、设置信息。
参数 描述
argv 传递给该脚本的参数
argc 包含传递给程序的命令行参数的个数(如果运行在命令行模式)
DOCUMENT_ROOT 网站根目录(apche httpd.conf 中的 DocumentRoot)
GATEWAY_INTERFACE 服务器使用的 CGI 规范的版本。例如,“CGI/1.1”
HTTP_ACCEPT 当前请求的 Accept: 头部的内容
HTTP_ACCEPT_CHARSET 当前请求的 Accept-Charset: 头部的内容,例如:“iso-8859-1,*,utf-8”
HTTP_ACCEPT_ENCODING 当前请求的 Accept-Encoding: 头部的内容,例如:“gzip”
HTTP_ACCEPT_LANGUAGE 当前请求的 Accept-Language: 头部的内容,例如:“en”
HTTP_CONNECTION 当前请求的 Connection: 头部的内容,例如:“Keep-Alive”
HTTP_HOST 当前请求的 Host: 头部的内容
HTTP_REFERER 链接到当前页面的前一页面的 URL 地址
HTTP_USER_AGENT 当前请求的 User-Agent: 头部的内容
HTTPS 如果通过https访问,则被设为一个非空的值(on),否则返回off
PHP_SELF 当前网页的文件路径
PATH_TRANSLATED 当前 脚本所在文件系统(不是文档根目录)的基本路径
QUERY_STRING get 请求地址:http://www.abc.com/abc.php?a=10 中的 a=10 这段字符串
REMOTE_ADDR 用户的 IP 地址
REMOTE_HOST 用户的主机名
REMOTE_POST 用户连接到服务器时所使用的端口
REQUEST_METHOD 访问页面时的请求方法,例如:“GET”、“HEAD”,“POST”,“PUT”
REQUEST_URI 访问此页面所需的 URI。例如,“/index.html”
SCRIPT_NAME 包含当前 脚本的路径。这在页面需要指向自己时非常有用
SCRIPT_FILENAME 当前执行 脚本的 绝对路径名
SERVER_ADMIN 管理员信息
SERVER_ADDR 服务器 IP 地址
SERVER_NAME 服务器的主机名
SERVER_SOFTWARE 服务器标识的字串,在响应请求时的头部中给出
SERVER_PROTOCOL 请求页面时通信协议的名称和版本,例如,“HTTP/1.0”
SERVER_PORT 服务器所使用的端口
SERVER_SIGNATURE 包含服务器版本和 虚拟主机名的字符串

打印 $_SERVER:

td{padding:3px;}";
echo "";
foreach($_SERVER as $key => $value){
    echo "";
    echo "";
    echo "";
    echo "";
};
echo "
$key$value
"; ?>
  • $GLOBALS 变量(数组): 所有的全局变量都储存在 $GLOBALS 中。
';
var_dump($GLOBALS);
echo '
'; ?> //输出结果如下: /*array(8) { ["_GET"]=> array(0) {} ["_POST"]=> array(0) {} ["_COOKIE"]=> array(1) { ["ext_type"]=> string(1) "1" } ........ 重点如下: ["GLOBALS"]=> *RECURSION* ["v1"]=> int(1) ["v2"]=> int(2) }*/
常量

  • 常量类似变量,但是常量一旦被定义就无法更改或撤销定义。
  • 常量以字符或下划线开头。
  • 与变量不同,常量贯穿整个脚本自动全局。
  • 定义形式:
  • define() 函数 :define(常量名,常量值,大小写 bool 值);
    推荐常量名使用大写形式;
"._C2."";
$arc=pi*5*5;
echo "
"; echo $title; //AAA echo "
"; echo $arc; //75 ?>
  • const 语法:const 常量名 = 常量值;
    const 只能在 "最顶层" 的代码中使用(即:不能在 {} 中使用);
1){
        const C2=110;    //error
}
echo constant("C1");    //998
$s1="C1";
echo constant($s1);     //998
?>
  • 常量和变量的区别:
  1. 常量不需要 $ 符号声明;
  2. 常量值不可更改或销毁;
  3. 常量自带超全局作用域;
  4. 常量只能存储标量类型(int、float、string、bool);
  • 通过 defined() 函数判断是否为常量。
if(defined(常量)){ dosometing.... }
//或者
$flag=defined(常量);  //true false
特殊常量

  • 预定义常量。
    PHP 中定义了大量的常量,可直接调用;其中有些常量需要打开指定模块后才可以使用,(例如:mysql 模块)。

  • 举例:M_PI(圆周率) PHP_OS(操作系统) PHP_VERSION(版本号) PHP_INI_MAX(正无穷)

  • 详细可参见 目录。

  • 魔术常量。
    魔术常量是一种可以在不同条件环境下反映不同值的常量。比如:
    __DIR__(当前文件所在目录)__FILE__(当前文件)__LINE__(当前行)

";
echo "当前文件:".__FILE__;    //X:\phpStudy\WWW\php\demo.php
echo "
"; echo "当前代码所在行:".__LINE__; //6 echo "
"; echo "当前代码所在行:".__LINE__; //8 echo "
"; ?>

你可能感兴趣的:(0.2 PHP 基础入门)