如何循环关联数组?

时间:2013-09-19 20:21:35

标签: php

这是我的阵列:

 $data = array(
        'user_id'               => $profile_data['user_id'],
        'sender_id'             => $session_user_id,
        'sender_first_name'     => $user_data['first_name'],
        'photo_url'             => 'null',
        'time'                  => time(),
        'status'                => $_POST['status']

        );

这是我的功能:

function post($data) {

    array_walk($data, 'array_sanitize');

    $fields = '`' . implode('`, `', array_keys($data)) . '`';
    $data = '\'' . implode('\', \'', $data) . '\'';

    mysql_query("INSERT INTO status ($fields) VALUES ($data) ");

    if ($data['sender_id'] == 1) {
//code
    }
}

如何检查'sender_id'的值是否为1,例如?

2 个答案:

答案 0 :(得分:1)

你可以说:

if ( $data['sender_id'] == 1 )
{
    // do stuff
}

但一般来说,如果你需要环顾一个数组,你就是这样做的

foreach ($data as $key => $value)
{
    if ( $key == 'sender_id' && $value == 1 )
    {
        // do stuff
    }
}

答案 1 :(得分:1)

如果您想要检查变量,请不要覆盖变量,使用不同的变量:

$data_str = '\'' . implode('\', \'', $data) . '\'';
mysql_query("INSERT INTO status ($fields) VALUES ($data_str) ");

if ($data['sender_id'] == 1) {
    // code
}