• php基础


    参考:W3school PHP教程:http://www.w3school.com.cn/php/index.asp

    1PHP中的变量:

    Php的变量部分和python类似,都是无类型声明的,只不过php多一个$符

    以$符号开头,后面紧跟一个字母或下划线(不能是数字),然后后面可以由字母,下划线或数字组成

     var_dump() 会返回变量的数据类型和值

    php中bool变量的值为true或false

    php中把变量定义为空:$x=null;

    数组:
    索引数组
    定义法一:$cars=array("Volvo","BMW","SAAB");

    定义法二(分开指定):

    $cars[0]="Volvo";

    $cars[1]="BMW";

    $cars[2]="SAAB";

    遍历索引数组:用count(数组名)方法获取数组长度

    <?php

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

    $arrlength=count($cars);

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

      echo $cars[$x];

      echo "<br>";

    }

    ?>

     

    关联数组(字典)

    定义法一:$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

    定义法二:

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

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

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

    遍历关联数组(字典):用foreach循环

    <?php

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

    foreach($age as $x=>$x_value) {

      echo "Key=" . $x . ", Value=" . $x_value;

      echo "<br>";

    }

    ?>

    数组的排序

    • sort() - 以升序对数组排序
    • rsort() - 以降序对数组排序
    • asort() - 根据值,以升序对关联数组进行排序
    • ksort() - 根据键,以升序对关联数组进行排序
    • arsort() - 根据值,以降序对关联数组进行排序
    • krsort() - 根据键,以降序对关联数组进行排序

    其他,phpstring参考手册(功能强大):

    http://www.w3school.com.cn/php/php_ref_array.asp

    •  

    2PHP中的常量:

    常量的值无法改变且常量是全局的
    常量的定义方法:define(常量名,常量值[,常量名是否大小写敏感(true为不敏感)])

    <?php

    define("GREETING", "Welcome to W3School.com.cn!");

    echo GREETING;

    ?>

    3PHP类和PHP函数(无返回值类型声明,设置默认参数用=):

    <?php

    class Car

    {

      var $color;

    #php函数

      function Car($color="green") {

        $this->color = $color;

      }

      function what_color() {

        return $this->color;

      }

    }

    ?>

    4PHP判断/条件语句(while语句和for语句同java):

    if (条件) {

      条件为 true 时执行的代码;

    } elseif (condition) {

      条件为 true 时执行的代码;

    } else {

      条件为 false 时执行的代码;

    }

    ####java是else if || python是elif || php是elseif

    switch (expression)

    {

    case label1:

      code to be executed if expression = label1;

      break; 

    case label2:

      code to be executed if expression = label2;

      break;

    default:

      code to be executed

      if expression is different

      from both label1 and label2;

    }

     

    5PHP字符串函数:

    字符串长度:strlen(“hello”);#返回5

    字符串中查找字符串:strpos(“hello world!”,”world”);#返回匹配到的字符串的首字符位置或false

    其他,phpstring参考手册(功能强大):

    http://www.w3school.com.cn/php/php_ref_string.asp

    6echo print 之间的差异:

    • echo - 能够输出一个以上的字符串
    • print - 只能输出一个字符串,并始终返回 1

    提示:echo 比 print 稍快,因为它不返回任何值。

    echo "This", " string", " was", " made", " with multiple parameters.";

    echo $txt1;
    echo "My car is a {$cars[0]}";
    print "Study PHP at $txt2";
    print $txt1;
    print "My car is a {$cars[0]}";

    7php运算:

    与python3类似,php中用/做整数除法可以得到小数

    8global关键词:在函数内引用全局变量

    法一
    <?php
    $x=5;
    $y=10;
     
    function myTest() {
      global $x,$y;
      $y=$x+$y;
    }
     
    myTest();
    echo $y; // 输出 15
    ?>
     
    法二
    <?php
    $x=5;
    $y=10;
     
    function myTest() {
      $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
    } 
     
    myTest();
    echo $y; // 输出 15
    ?>

    9Static关键词:在函数内定义静态变量(这个变量属于这个函数,调用函数后变量不会销毁)

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

    10PHP中的超全局变量,9(下面介绍了前5)$GLOBAL, $_SERVER, $_REQUEST, $_POST, $_GET, $_FILES, $_ENV, $_COOKIE, $_SESSION

     

    $GLOBAL用于在任意位置访问全局变量,用法$GLOBAL[‘不带$号的全局变量名’]

    <?php

    $x = 75;

    $y = 25;

     

    function addition() {

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

    }

     

    addition();

    echo $z;

    ?>

    $_SERVER用于访问一些系统参数,用法$_SERVER[‘要访问的参数’]

     

    $_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。

     

    $_REQUEST获取提交到当前脚本的html表单内容,用法:$_REQUEST[‘提交到当前脚本的html表单(GET,POST…都可以)中的元素的name’]

    <html>

    <body>

    <form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">

    Name: <input type="text" name="fname">

    <input type="submit">

    </form>

    <?php

    $name = $_REQUEST['fname'];

    echo $name;

    ?>

    </body>

    </html>

    $_POST获取提交到当前脚本的POST表单内容(用法同$_REQUEST)

    <html>

    <body>

    <form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">

    Name: <input type="text" name="fname">

    <input type="submit">

    </form>

    <?php

    $name = $_POST['fname'];

    echo $name;

    ?>

    </body>

    </html>

    $_GET获取提交到当前脚本的GET表单内容(用法同$_REQUEST)

    发送get请求:test_get.php?subject=PHP&web=W3school.com.cn

    test_get.php脚本:

    <html>

    <body>

     

    <?php

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

    ?>

     

    </body>

    </html>

     

     

  • 相关阅读:
    [C#][Log4Net] 配置
    C# 浅拷贝与深拷贝(复制)
    AJAX学习
    Web应用程序与Web网站在IIS中部署
    hexo配置主题发表文章
    【JQuery】学习
    Hexo博客网站再配置
    win7安装和配置IIS7
    常见正则表达式
    【HTML】id与name的用法
  • 原文地址:https://www.cnblogs.com/zealousness/p/7670041.html
Copyright © 2020-2023  润新知