zoukankan      html  css  js  c++  java
  • php 一些常用函数

    1、var_export()

    var_export — 输出或返回一个变量的字符串表示
    此函数返回关于传递给该函数的变量的结构信息,它和 var_dump() 类似,不同的是其返回的表示是合法的 PHP 代码

    您可以通过将函数的第二个参数设置为 TRUE,从而返回变量的表示。

    $a = var_export($array,true) 将变量打印出来包括类型记录下来 然后输出,常用于记录日志

    $data = [
                'yyyyy',
                'info'=>[1=>11,2=>22],
                '333333'
            ];
            dump($data);
           // echo join(',',$data);---会报错,因为是二维数组,只适用于一维数组
            var_export($data);----返回数组
            echo '<br/>';
            echo var_export($data,true);----返回字符串
    
    输出结果
    array(3) {
      [0] => string(5) "yyyyy"
      ["info"] => array(2) {
        [1] => int(11)
        [2] => int(22)
      }
      [1] => string(6) "333333"
    }                               -------dump输出
    array ( 0 => 'yyyyy', 'info' => array ( 1 => 11, 2 => 22, ), 1 => '333333', )---数组 

    array ( 0 => 'yyyyy', 'info' => array ( 1 => 11, 2 => 22, ), 1 => '333333', )---字符串

    2、parse_str()

    parse_str() 函数把查询字符串解析到变量中。

    注释:如果未设置 array 参数,则由该函数设置的变量将覆盖已存在的同名变量。

    注释:php.ini 文件中的 magic_quotes_gpc 设置影响该函数的输出。如果已启用,那么在 parse_str() 解析之前,变量会被 addslashes() 转换。

    <?php
    parse_str("name=Bill&age=60");
    echo $name."<br>";
    echo $age;
    ?>
    
    
    <?php
    parse_str("name=Bill&age=60",$myArray);
    print_r($myArray);
    ?>

    3、file_get_contents('php://input', 'r');

    $_REQUEST包含$_POST$_GET$_COOKIE的所有数据,是根据键值对解析好的。而php://input是原始数据,是未解析的。

    如果提交的是表单formenctypeapplication/x-www-form-urlencoded或者multipart/form-data,那么表单中的键值对就会被解析到上述三个超全局变量中。而multipart/form-data编码提交的文件会被解析到$_FILES中。

    而如果你提交的数据不是上述表单编码,可能无法解析,就可以用php://input来获取提交的原始数据。

    index.html

     <form action="action.php" method="post" >
      <input type="text" name="userName"  id="userName" /><br/>
      <input type="text" name="userPass"  id="userPass" /><br/>
      <input type="submit" value="ok" />
     </form>

    action.php

    <?php
    $raw_post_data = file_get_contents('php://input', 'r');
    echo "-------$_POST------------------<br/>";
    echo var_dump($_POST) . "<br/>";
    echo "-------php://input-------------<br/>";
    echo $raw_post_data . "<br/>";
    ?>

     输出:

     1).php用file_get_contents("php://input")或者$HTTP_RAW_POST_DATA可以接收xml数据

     2)file_get_contents("php://input") 获取数据进行解析

     parse_str($raw_post_data, $data);
     var_export($data);
     echo $data['userName'];-----数组形式
  • 相关阅读:
    POJ 1061
    LightOJ 1104
    扩展欧几里得算法
    2015 HUAS Summer Trainning #5 E
    2015 HUAS Summer Trainning #5 C
    2015 HUAS Summer Trainning #5 B
    2015 HUAS Summer Trainning #5 A
    2015 HUAS Summer Trainning #4 D
    2015 HUAS Summer Trainning #4 C
    2015 HUAS Summer Trainning #4 B
  • 原文地址:https://www.cnblogs.com/ivy-zheng/p/11609276.html
Copyright © 2011-2022 走看看