php从数组中获得一对一的价值

时间:2018-10-03 09:22:52

标签: php

我如何在每次调用中获取价值在数组中获取下一个价值? 我想运行crone mysitedotcom / getvalue.php。每次运行我都需要从数组中一个个地获取价值。我不想获取随机值或任何随机值。.我需要每次刷新都获取下一个值

  $array = [
  'one' =>   11,
  'two'   =>   22,
  'three'   =>   33
   ];
  $val = i need single value one by order

我想要这样的输出

 first output = 11
 after refresh = 22
 after refresh = 33
 after refresh = 11
 after refresh = 22

2 个答案:

答案 0 :(得分:2)

这是一个适用于会话的解决方案:

  session_start();

  if(!isset($_SESSION['key'])){
    $_SESSION['key'] = 'one';
  }

  $a = [
    'one' => 11,
    'two' => 22,
    'three' => 33
  ];

  echo $a[$_SESSION['key']];

  $keys = array_keys($a);
  $_SESSION['key'] = $keys[array_search($_SESSION['key'], $keys) + 1];

答案 1 :(得分:0)

两种解决方案:

  • 存储一个键变量,并每次增加它(不要忘记在达到数组长度时重置)。
  • 在第一个条目所在的位置创建一个副本数组,然后将其删除。如果数组为空,请再次复制原始数组。

一个或另一个,为什么要这么做?

编辑:使用这两种解决方案时,您都必须将其保存在数据库或会话中,无论您使用密钥还是数组。