为键和值创建具有值[1]新的数组[2]值
我有被保存为为键和值创建具有值[1]新的数组[2]值
{time} | {name} | {value1}
{time} | {name} | {value2}
{time} | {name2} | {value3}
{time} | {name3} | {value4}
的{TIME}日志文件是在“自Unix纪元秒”的时间戳
和日志文件被写入一行一行所以最新的日志行是在底部,
,我试图将值归类到一个PHP数组....
可以说,我们有
{time} | Steve | Pizza
{time} | Steve | Kebab
{time} | Steve | Burger
{time} | John | Kebab
{time} | John | Ice-Cream
{time} | Dave | Pizza
{time} | Derek | Ice-Cream
{time} | Derek | Fanta
我已迅速发展成数组$线
这是我可以用它来获取变量....
echo $lines[0][1] . "," . $lines[0][2]; // this will print ' Steve,Pizza '
echo $lines[3][2]; // this will print ' Kebab '
我试图用某种方式编写一个阵'$线[$ X] [1] '作为数组键和' $线[$ X] [2]'作为数组的值,所以我可以拨打:
print_r($new_array);
得到:
array
(
[Steve] => Pizza
=> Kebab
=> Burger
)
(
[John] => Kebab
=> Ice-Cream
)
(
[Dave] => Pizza
)
(
[Derek] => Ice-Cream
=> Fanta
)
这样做的原因是我需要显示一个小桌子,这将是这样的....
_________________________________________
| Steve | Pizza |
| | Kebab |
|___________________|_____ Burger ________|
| John | Kebab |
|___________________|_____ Ice-Cream _____|
|______ Dave _______|_____ Pizza _________|
| Derek | Ice-Cream |
|___________________|_____ Fanta _________|
数组$线已经格式化删除所有“日志行”年长超过24小时....
所以我不认为我会需要限制阵列键{}名称
在此先感谢您的任何建议量....已经尝试了所有这一切逻辑的解决方案:咆哮:
没有完全测试,但尝试:
$new = array();
foreach($lines as $line)
{
$new[$line[1]][] = $line[2];
}
print_r($new);
编辑由DJ-皮条客..
$new = array();
foreach($lines as $line)
{
$new[$line[1]][] = $line[2];
}
// print_r($new);
foreach($new as $key => $news) {
echo $key . "<br>";
foreach($news as $k => $v) {
echo $news[$k] . "<br>";
}
}
这确实exacly我的问题是问....荣誉,为最初的想法@亚伦:)
不同变化增加值共享子阵列相同的密钥:
$result = array();
for ($lines as $line) {
if (!isset($result[$line[1]])) {
$result[$line[1]] = array();
}
$result[$line[1]][] = $line[2];
}
这给了我代码错误,并不加载任何东西? – 2012-02-13 20:11:15
缺少方括号...修正它。 – Feysal 2012-02-13 20:41:08
非常感谢,但第一个答案已经完成,因为我问,只是等待我的代码编辑为管理员批准:)对不起 – 2012-02-13 20:42:11
确定这工作完美,但我不能得到正确的语法打印/回声{name1}和{值} ......是$ new [$ line] [0]的名称和$ new [$ line] [1]值? – 2012-02-13 20:08:51
即时通讯现在认为它可能是另一个新的$新....这样我可以列出$ name [$ x]和$ value [$ x] [1] .....和$ name [$ y]和$ value [$ y] [1]? – 2012-02-13 20:14:41
确定即时消息在那里,我有foreach($新为$ key => $ news){ echo $ key。 “
”; print_r($ news); echo“
”; } .....这显示我的工作如预期.....现在我写新的foreach嵌套显示每个值也感谢 – 2012-02-13 20:29:51