【问题标题】:Search in array and use it to save在数组中搜索并使用它来保存
【发布时间】:2017-08-10 06:06:57
【问题描述】:

这周我一直在做一个关于进口的特殊项目。我创建的函数从不同的来源导入 xml 并将其保存在我的数据库中。

我的解决方案是: - 从 XML 中保存我想要的所有密钥并将其保存到我的数据库中。

但是因为每个 XML 都不同,所以我想搜索其中一个 XML 的数组并搜索我想要保存的键。

现在的问题是: - 我有一系列事件,我想要键的值并将其保存到我的数据库中。

我的 XML 示例数组:

[
 [event] =>
           [
            [0] =>
                  [
                   [foo1] => [bar1]
                   [foo2] => [bar2]
                  ]
            [1] =>
                  [
                   [foo1] => [bar3]
                   [foo2] => [bar4]
                  ]
           ]
]   

非常感谢!

【问题讨论】:

  • 如果我是你,我会直接搜索xml而不是构建数组。即使您的 xml 文件不同,也可能有一种方法可以提取您想要的内容。

标签: php arrays xml


【解决方案1】:

你试过array_keys功能吗?它从一个数组中返回键,在该数组中找到您指定的值

看看这个

http://php.net/manual/es/function.array-keys.php

array_keys($array, "search_value");

【讨论】:

  • 非常感谢!那么问题是如何循环抛出这些事件?
  • 对不起,我把链接放在西班牙语中,这里是英文php.net/manual/en/function.array-keys.php,该函数返回一个带有键的数组,因此您可以使用 foreach 循环来获取每个键
  • array_keys() 不适用于多维数组...替代方案?
  • 你可以使用函数array_column,我有一个类似的情况,我需要知道一个特定元素的位置,所以我只取我的搜索值所在的列(唯一的变化是我使用array_search而不是array_keys,这是我的代码--array_search("search_value", array_column($datos, 'column_name'));
  • Thnx,但在此我得到一个布尔值而不是列的值
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-22
  • 2014-11-28
  • 2013-04-15
  • 2016-07-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多