php怎么得到数组的键名

不及物动词 其他 179

回复

共3条回复 我来回复
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在PHP中,可以通过以下几种方法获取数组的键名:

    1. array_keys()函数:
    array_keys()函数会返回一个包含数组键名的新数组。可以将原数组作为参数传递给该函数,即可得到该数组的键名。示例代码如下:

    “`
    $arr = array(“a” => 1, “b” => 2, “c” => 3);
    $keys = array_keys($arr);
    print_r($keys);
    “`

    输出结果为:

    “`
    Array
    (
    [0] => a
    [1] => b
    [2] => c
    )
    “`

    2. foreach循环:
    使用foreach循环可以逐个遍历数组的元素,并通过$key变量获取到当前元素的键名。示例代码如下:

    “`
    $arr = array(“a” => 1, “b” => 2, “c” => 3);
    foreach ($arr as $key => $value) {
    echo $key . “\n”;
    }
    “`

    输出结果为:

    “`
    a
    b
    c
    “`

    3. array_flip()函数:
    array_flip()函数会将数组的键名和键值进行交换,从而得到包含了原数组键名的新数组。示例代码如下:

    “`
    $arr = array(“a” => 1, “b” => 2, “c” => 3);
    $keys = array_flip($arr);
    print_r($keys);
    “`

    输出结果为:

    “`
    Array
    (
    [1] => a
    [2] => b
    [3] => c
    )
    “`

    以上就是获取数组键名的几种常用方法。根据你的需求选择合适的方法即可。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在PHP中,可以使用以下方法获得数组的键名:

    1. array_keys()函数:该函数返回数组中所有的键名,可以通过指定第二个参数来筛选指定的值。示例如下:

    “`php
    $array = array(‘foo’ => ‘bar’, ‘hello’ => ‘world’, ‘php’ => ‘array’);
    $keys = array_keys($array);
    print_r($keys);
    // 输出:Array ( [0] => foo [1] => hello [2] => php )
    “`

    可以看到,array_keys()函数返回一个新数组,其中包含原数组的所有键名。

    2. foreach循环:使用foreach循环遍历数组时,可以通过赋值给一个变量来获取当前的键名。示例如下:

    “`php
    $array = array(‘foo’ => ‘bar’, ‘hello’ => ‘world’, ‘php’ => ‘array’);
    foreach($array as $key => $value) {
    echo $key . ‘
    ‘;
    }
    // 输出:foo hello php
    “`

    在每次循环中,$key变量将被赋值为当前的键名。

    3. array_map()函数:该函数可以对数组的每个元素进行处理,并返回新的数组。在回调函数中,可以利用第一个参数来获取键名。示例如下:

    “`php
    $array = array(‘foo’ => ‘bar’, ‘hello’ => ‘world’, ‘php’ => ‘array’);
    $keys = array_map(function($key) {
    return $key;
    }, array_keys($array));
    print_r($keys);
    // 输出:Array ( [0] => foo [1] => hello [2] => php )
    “`

    在回调函数中,$key参数即为键名。

    4. array_keys()函数的第二个参数:可以在array_keys()函数中指定第二个参数来筛选指定的值对应的键名。示例如下:

    “`php
    $array = array(‘foo’ => 1, ‘hello’ => 2, ‘php’ => 3);
    $search = 2;
    $keys = array_keys($array, $search);
    print_r($keys);
    // 输出:Array ( [0] => hello )
    “`

    以上示例中,只有键值为2的元素的键名被返回。

    5. 使用array_flip()函数:array_flip()函数将数组的键和值进行交换,因此可以用于获取原数组的键名作为新数组的值。示例如下:

    “`php
    $array = array(‘foo’ => ‘bar’, ‘hello’ => ‘world’, ‘php’ => ‘array’);
    $keys = array_flip($array);
    print_r($keys);
    // 输出:Array ( [bar] => foo [world] => hello [array] => php )
    “`

    可以看到,原数组的键名变为了新数组的值。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在PHP中,可以使用`array_keys()`函数来获取数组的键名。`array_keys()`函数会返回一个新的数组,其中包含原数组的所有键名。

    使用`array_keys()`函数非常简单,只需要传入要获取键名的数组作为参数即可。以下是获取数组键名的示例:

    “`php
    $array = [‘name’ => ‘John’, ‘age’ => 20, ‘city’ => ‘New York’];
    $keys = array_keys($array);

    print_r($keys);
    “`

    输出结果为:

    “`
    Array
    (
    [0] => name
    [1] => age
    [2] => city
    )
    “`

    上述示例中,原数组`$array`包含了三个键值对,分别是`name => John`、`age => 20`和`city => New York`。通过`array_keys($array)`函数,我们得到了一个新的数组`$keys`,其中包含了原数组的三个键名`name`、`age`和`city`。

    如果原数组中存在重复的值,那么`array_keys()`函数将返回所有对应的键名。例如:

    “`php
    $array = [‘a’ => 1, ‘b’ => 2, ‘c’ => 1];
    $keys = array_keys($array);

    print_r($keys);
    “`

    输出结果为:

    “`
    Array
    (
    [0] => a
    [1] => b
    [2] => c
    )
    “`

    上述示例中,原数组`$array`中的值`1`出现了两次,对应的键名分别是`a`和`c`,因此`array_keys()`函数返回了包含这两个键名的数组`$keys`。

    另外,`array_keys()`函数还可以接收一个可选的第二个参数,用于指定要获取键名的值。如果省略第二个参数,`array_keys()`函数将返回所有的键名。如果指定了第二个参数,`array_keys()`函数将只返回与该参数相等的值对应的键名。例如:

    “`php
    $array = [‘name’ => ‘John’, ‘age’ => 20, ‘city’ => ‘New York’];
    $keys = array_keys($array, ‘John’);

    print_r($keys);
    “`

    输出结果为:

    “`
    Array
    (
    [0] => name
    )
    “`

    上述示例中,我们指定了`array_keys()`函数的第二个参数为`’John’`,所以只有与值`’John’`对应的键名`name`被返回。

    总结来说,要获取数组的键名,可以使用`array_keys()`函数。它返回一个新的数组,其中包含原数组的所有键名。可以通过指定第二个参数来获取特定值对应的键名。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部