从var中删除数字数组键

我想做var_export()并去掉数组上的所有数字数组键。 我的数组输出如下所示:

array (
  2 => 
  array (
    1 => 
    array (
      'infor' => 'Radiation therapy & chemo subhead',
      'PPOWithNotif' => '',
      'PPOWithOutNotif' => 'Radiation therapy & chemo PPO amount',
      'NonPPO' => 'Radiation therapy & chemo Non PPO amount',
    ),
  ),
  3 => 
  array (
    1 => 
    array (
      'infor' => 'Allergy testing & treatment subhead',
      'PPOWithNotif' => '',
      'PPOWithOutNotif' => 'Allergy testing & treatment PPO amount',
      'NonPPO' => 'Allergy testing & treatment Non PPO amount',
    ),
  )
)

通过这样做,我可以随机洗牌数组值,而不必担心数值数组值。

我试过使用echo preg_replace("/[0-9]+ =>/i", '', var_export($data)); 但它什么也没有做。 有什么建议么? 有没有我没有用我的正则表达式做的事情? 有没有更好的解决方案呢?


您必须将var_export的第二个参数设置为true ,否则没有给您的preg_replace调用返回值。


参考:https://php.net/manual/function.var-export.php

返回
如果使用并设置为TRUE ,则var_export()将返回变量表示而不是输出它。


更新:回顾这个问题,我有一个预感,一个简单的array_values($input)就足够了。


为什么不使用array_rand

 $keys = array_rand($array, 1);
 var_dump($array[$keys[0]]); // should print the random item

PHP还有一个函数shuffle ,它将为你打乱数组,然后使用foreach循环或next / each方法,以随机顺序将其拉出。

链接地址: http://www.djcxy.com/p/6907.html

上一篇: Stripping out numerical array keys from var

下一篇: rotating only the text (not the div) in a div element