0

我有 10 组 3 个值。在每一点上,我只会知道其中的 1 个值,并且需要检索其他 2 个值。例如,我知道 id_a2 是什么,如何使用它来获取 id_a1 和 id_a3?

id_a1, id_a2, id_a3
id_b1, id_b2, id_b3
id_c1, id_c2, id_c3...
4

1 回答 1

0

将其存储在一个多维数组中,然后循环遍历它:

$data = array(
    array('id_a1', 'id_a2', 'id_a3'),
    array('id_b1', 'id_b2', 'id_b3'),
    array('id_c1', 'id_c2', 'id_c3')
);

find_siblings('id_b2', $data); // returns: array('id_b1', 'id_b3')

function find_siblings ( $needle, $haystack )
{
    foreach ( $haystack as $array )
    {
        if ( in_array($needle, $array) )
        {
            $out = array();

            foreach ( $array as $value )
            {
                if ( $value != $needle ) $out[] = $value;
            }

            return $out;
        }
    }
}

在此处查看实际操作:http: //viper-7.com/VPVTnU

于 2012-07-18T01:42:57.517 回答