【问题标题】:Get array key does not work with Session array获取数组键不适用于会话数组
【发布时间】:2015-09-11 08:16:53
【问题描述】:

我在不久前设计的脚本上使用了会话数组。最近,当 修改这个工作脚本,我遇到了这个错误:

$CategoryId = key($_SESSION['StoreCategory'][$index]);

返回错误:

警告:key() 期望参数 1 是数组,给定字符串

是否有其他方法可以获取会话数组的密钥?

【问题讨论】:

  • $_SESSION['StoreCategory']的结构?
  • var_dump($_SESSION['StoreCategory'][$index]); 的输出是什么?
  • $_SESSION['StoreCategory'] 显然没有您期望的结构。第一步,在 Stackoverflow 之前,是 var_dump 它。
  • 使用 var_dump 查看结构,我认为您必须在使用 key() 函数 $CategoryId = (isset($_SESSION['StoreCategory'][$index]))?key( $_SESSION['StoreCategory'][$index]):'';
  • [12124334] 'CategoryName'

标签: php arrays session array-key


【解决方案1】:

key() 方法会给出数组当前元素的键,所以这个方法的参数应该是一个数组。

如果您要查找数组的所有键,您可以使用array_keys。 更多详情请参考:http://php.net/manual/en/function.array-keys.php

【讨论】:

    猜你喜欢
    • 2015-02-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-28
    • 2018-03-15
    相关资源
    最近更新 更多