Home  >  Article  >  php教程  >  php返回数组中指定的一列(php5.5.0默认函数array_column()在php<5.5.0的应用)

php返回数组中指定的一列(php5.5.0默认函数array_column()在php<5.5.0的应用)

PHP中文网
PHP中文网Original
2016-05-25 16:59:051638browse

跳至

/**
 * 返回数组中指定的一列
 * http://www.onethink.cn
 * /Application/Common/Common/function.php
 *
 * array_column — PHP 5 >= 5.5.0 默认函数
 * PHP 5 < 5.5.0 则使用自定义函数
 *
 * @access public
 * @param array $input 需要取出数组列的多维数组(或结果集)
 * @param string $columnKey 需要返回值的列,它可以是索引数组的列索引,或者是关联数组的列的键。也可以是NULL,此时将返回整个数组(配合indexKey参数来重置数组键的时候,非常管用)
 * @param string $indexKey 作为返回数组的索引/键的列,它可以是该列的整数索引,或者字符串键值。
 * @return array
 */
if (! function_exists(&#39;array_column&#39;))
{
    function array_column(array $input, $columnKey, $indexKey = null)
    {
        $result = array();
        if (null === $indexKey)
        {
            if (null === $columnKey)
            {
                $result = array_values($input);
            }
            else
            {
                foreach ($input as $row)
                {
                    $result[] = $row[$columnKey];
                }
            }
        }
        else
        {
            if (null === $columnKey)
            {
                foreach ($input as $row)
                {
                    $result[$row[$indexKey]] = $row;
                }
            }
            else
            {
                foreach ($input as $row)
                {
                    $result[$row[$indexKey]] = $row[$columnKey];
                }
            }
        }
        return $result;
    }
}

                       

           

2. [代码]演示例子     跳至

 2135,
        &#39;first_name&#39; => &#39;John&#39;,
        &#39;last_name&#39; => &#39;Doe&#39;,
    ),
    array(
        &#39;id&#39; => 3245,
        &#39;first_name&#39; => &#39;Sally&#39;,
        &#39;last_name&#39; => &#39;Smith&#39;,
    ),
    array(
        &#39;id&#39; => 5342,
        &#39;first_name&#39; => &#39;Jane&#39;,
        &#39;last_name&#39; => &#39;Jones&#39;,
    ),
    array(
        &#39;id&#39; => 5623,
        &#39;first_name&#39; => &#39;Peter&#39;,
        &#39;last_name&#39; => &#39;Doe&#39;,
    )
);
 
$first_names = array_column($records, &#39;first_name&#39;);
print_r($first_names);
?>

           

           

           

3. [代码]演示例子会输出:     跳至

Array
(
    [0] => John
    [1] => Sally
    [2] => Jane
    [3] => Peter
)

           

       

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn