background image

php 接收参数及获取 post 原数据的方法

本文介绍在

php 编程中,接收参数的几种方式,以及如何获取 post 原始数据的方法,有需

要的朋友,参考下吧。
初学

php 的朋友,最容易在这一块有困惹,就是不知道如何接收页面或 url 中的参数值。

PHP5 中,默认接收参数传递的值时,会考虑使用:

$_GET['value'];
$_POST['value'];
如果在

PHP.ini 配置文件中,将 register_globals = Off,修改为:register_globals = on,那么

就可以直接使用,

$value 的值。

不过,为了安全起见,我们不推荐这样做。
下面,介绍下

PHP 获取 Post 的原始数据的方法。

php 编程中,一般都用$_POST 或$_REQUEST 两个预定义变量来接收 POST 提交的数据。

不过,当提交的数据无变量名,而是直接的字符串时,就需要考虑换种方式来接受这种数
据了。
下面,为大家介绍两种变通的方法。
方法一,使用全局变量

$GLOBALS['HTTP_RAW_POST_DATA']

$GLOBALS['HTTP_RAW_POST_DATA']存放的是 POST 过来的原始数据。

$_POST 或$_REQUEST 存放的是 PHP 以 key=>value 的形式格式化以后的数据。

$GLOBALS['HTTP_RAW_POST_DATA'] 中 是 否 保 存 POST 过 来 的 数 据 取 决 于 centent-

Type 的 设 置 , 即 POST 数 据 时 必 须 显 式 示 指 明 Content-Type:  application/x-www-form-
urlencoded,POST

 

的数据才会存放到

$GLOBALS['HTTP_RAW_POST_DATA']中。

方法二,使用

file_get_contents("php://input")

对于未指定

 Content-Type 的 POST 数据,则可以使用 file_get_contents("php://input");来获取

原始数据。
事实上,用

PHP 接收 POST 的任何数据均使用本方法。而不用考虑 Content-Type,包括二进

制文件流也是可行的。
推荐使用方法来,来获取无变量名的

post 原始数据。

最后,我们探讨下有关

php 中页面调用的一些问题。

php 中,调用其它页面,一般会考虑使用 require()与 require_once()。

   
一般就放在

 PHP 程序的最前面,PHP 

 

程序在执行前,就会先读入

require 所指定引入的文

件,如果出现错误是致命的。
再来看

include()与 include_once()

   

可以放在

 PHP 程序的任何一个位置,PHP 程序在执行到时,才会先读入 include 所指定引

入的文件,如果出现错误将会提示。

以下是简单的示例:

代码示例

:

<?php
require('my_conn.php');