【问题标题】:PHP Remove Square Brackets from Array KeyPHP从数组键中删除方括号
【发布时间】:2012-12-10 05:26:33
【问题描述】:

答案:

所以我的问题原来是 $eventValue 而不是关键。我假设将密钥添加到 $days 数组时,它被包含在括号中,但事实并非如此。 var_export 向我展示了真正添加到数组中的内容。

为了解决这个问题,我删除了 $eventValue 中的引号以及结尾的 , 逗号。

以下是原问题:

抱歉,因为我不太了解 PHP,但我正在努力实现一些我希望这里有人可以提供帮助的东西。

我有一个循环来查找一个月中的特定日期以在日历上突出显示。为了让日历突出显示特定日期并将其包装在一个类和一个链接标签中,我需要数组采用这种格式:

$days = array(

    2 => array('/weblog/archive/2004/Jan/02', 'linked-day'),
    3 => array('/weblog/archive/2004/Jan/03', 'linked-day'),
    8 => array('/weblog/archive/2004/Jan/08', 'linked-day'),
    22 => array('/weblog/archive/2004/Jan/22', 'linked-day'),

);

在我的循环中,我有这两个变量:

$eventDay = substr("$str", -2, 2);
$eventValue = "array('http://example.com', 'linked-day'),";

在我的循环结束时,我有这个:

$days[$eventDay] = $eventValue;

问题是,当我 print_r ($days) 时,我的 $eventDay 键包含在 [] 方括号中,因此日历无法找到日期。我需要找到一种方法来防止它被括在括号中。

也许我处理这一切都错了。如果有人有一些建议,我将不胜感激。

我正在使用 Keith Devens 的 PHP 日历脚本来执行此操作:

http://keithdevens.com/software/php_calendar

谢谢!

完整代码:

http://pastie.org/5503664

【问题讨论】:

  • $str 定义/分配在哪里?
  • 你试过var_dump()而不是print_r()吗?
  • 你能告诉我们完整的代码吗?您显示的部分还不够(例如,$str 是什么?)。你对这个 sn-p 的实际目标是什么?
  • 你能给我们一个print_r的样本吗...
  • 抱歉没有发布完整代码。我已经用代码底部的链接更新了原始问题。此外,这里是 print_r 吐出的内容:pastie.org/5503673

标签: php arrays key


【解决方案1】:

替换

$eventValue = "array('http://example.com', 'linked-day'),";

$eventValue = array('http://example.com', 'linked-day');

在馅饼的第 44 行

【讨论】:

    猜你喜欢
    • 2014-01-28
    • 2016-08-13
    • 2018-01-13
    • 2019-12-30
    • 1970-01-01
    • 1970-01-01
    • 2012-09-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多