编写php函数来验证数组中的数据

时间:2009-09-06 02:55:01

标签: php

我如何编写一个能够处理数组中数据的函数?

我的意思是,我可以使用

function CheckStuff($_POST){}

而不是

function CheckStuff($_POST['var1'], $_POST['var2']){}

我要问的原因是我需要函数来处理存储在数组中的所有值,并且有很多。

3 个答案:

答案 0 :(得分:6)

不确定

function CheckStuff($arr) {
    foreach($arr as $key => $val) {
        //...
    }
}

答案 1 :(得分:2)

结帐array_filter()。您可以定义一个函数,然后通过array_filter()传递数组的每个值,并只返回您需要的值:

function verifyData($item)
{
    //do some stuff
    return ($item_is_good) ? true : false;
}

$goodValues = array_filter($_POST,'verifyData');

如果您只想根据某些条件修改$ _POST的每个值,可以使用array_map()

function doSomeStuff($item)
{
    $item = $item++;
}

$output = array_map($_POST,'doSomeStuff');
//all of the values in $_POST have now had 1 added to them

答案 2 :(得分:1)

我使用类似下面的内容来遍历未知数量的数组项。

while( list( $field, $value ) = each( $_POST )) {
  // do something with each array element value
  myFunction( $value );
}

更多关于list()函数的信息:

http://www.w3schools.com/PHP/func_array_list.asp

关于each()函数的更多内容:

http://www.w3schools.com/PHP/func_array_each.asp