如果设置为php,如何计算数组变量

如果设置为php,如何计算数组变量,php,Php,如果在数组中按post设置,我想获取动态计数变量,请参见下面的代码示例: // Fields add dynamic by form if has input $name = $_POST['name']; $email = $_POST['email']; $mobile = $_POST['mobile']; $departuredate = $_POST['departuredate']; if(isset($_POST['vehicle'])){ $vehicle = $_POS

如果在数组中按post设置,我想获取动态计数变量,请参见下面的代码示例:

// Fields add dynamic by form if has input
$name = $_POST['name'];
$email = $_POST['email'];
$mobile = $_POST['mobile'];
$departuredate = $_POST['departuredate'];
if(isset($_POST['vehicle'])){
    $vehicle = $_POST['vehicle'];
} //this field may be yes or no
$query = $_POST['query'];

// other fields

// A set of required fields
$isset_fields = array(
    $name, $email, $mobile, $departuredate, $vehicle, $query
); // how can i define here vehicle field if isset ? then count array and value
因为@FrayneKonok和@Mohammad发表了一些评论。您需要使用count来计算$\u POST值及其动态值

if(isset($_POST['vehicle'])){ 
    $vehicle = $_POST['vehicle']; 
    $count = count($_POST); 
}
更新:

如果要获取$\u POST键,请使用array\u键。数组键将为您提供POST中的所有键。

用于获取$\u POST数组的每个索引。在循环中,您可以检查值的内容。如果发布值的内容为空,则将其删除。最后,您可以得到不是空的发布值

对于$i=0$i如果我正确理解了您的问题,您想知道在$\u POST[]super global中设置了多少个变量,我推断您也想知道设置了哪些值

下面的代码将搜索$\u POST中的所有值。重要的是要理解,只有isset为true的值才是foreach循环将检查的值,因为如果未设置这些值,则该值不存在

$size = 0;
foreach ($_POST as $key => $value)
{
    $size++;
    echo "{$key}: {$value}<br>";
}
echo "size of the array = {$size}<br>";
前面的代码将回显数组中的key=>value对以及数组的总大小

对于干净的编码使用方法

//Define fields you want to capture here
    $fields =
    [
        'name',
        'email',
        'mobile',
        'departuredate',
        'vehicle',
        'query',
    ];


    // A set of required fields
    $isset_fields = [];

    if( !empty($_POST) )
    {
        foreach ( $fields as $field )
        {
            if( isset( $_POST[$field] ) )
            {
                $isset_fields[] = $_POST[$field];
            }
        }
    }

    //TO Get Count
    $count = count($isset_fields);

你想得到$_POST[]变量的计数吗?是的,如果每个字段的变量是最计数的$_POST。你可能在寻找这个:如果设置$_POST['vehicle']{$vehicle=$_POST['vehicle'];count$_POST;}mohammad ji,它的计数总数,但我想得到变量名,这是你需要提到的两个人,我不是第一个做的,如果你提到的话,应该是两个。对不起,先生,谢谢你的编辑和这样的信息。嗨,我想得到每个POST变量的名称,它是设置的$\u POST['vehicle']是一个值,所以你怎么计算它呢?我必须计算数组中POST变量名称的总数,比如$name=$\u POST['name';如果设置$_POST['vehicle']{$vehicle=$_POST['vehicle']}我如何检查变量的数量?设置vehicle is dynamic field count$_POST和您的代码之间的差异是什么?@RivnatNasah如果我只想获得我将使用count的大小。因为我推断OP也希望从POST superglobal获取$key值,所以我将使用foreach循环的advatage来回送这些键,以手动获取计数。你也可以使用count,它不会有太大区别。@RivnatNasah我的答案和你的答案之间的区别是我们对OP所问问题的解释。我知道返回数组键的数组键。谢谢你的信息。如何验证?