Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中使用参数作为索引_Php_Arrays - Fatal编程技术网

在PHP中使用参数作为索引

在PHP中使用参数作为索引,php,arrays,Php,Arrays,我正在尝试做一件我不知道是否可行的事情。也接受其他想法 我将一个数组作为参数传递,其中索引是数据库中的任务id,值是任务与数据库的最后一次同步 $sync=Array ( [22805] => 1406822699 [22806] => 1406824500 [22807] => 1406838670 ) 然后我在数据库中做一个选择,它给我所有的任务,我只更新数据库中的一些任务,基本上是那些过时的任务 //$ta

我正在尝试做一件我不知道是否可行的事情。也接受其他想法

我将一个数组作为参数传递,其中索引是数据库中的任务id,值是任务与数据库的最后一次同步

$sync=Array
    (
        [22805] => 1406822699
        [22806] => 1406824500
        [22807] => 1406838670
    )
然后我在数据库中做一个选择,它给我所有的任务,我只更新数据库中的一些任务,基本上是那些过时的任务

//$tasks is the list of all tasks from the database and $sync is the array which is pased by the user
foreach($tasks as $task)
{
   if($task['sync']<=$sync[$task['taskList_id']])
   {}
   else
   {//to be updated
      $taskModel->updateLastSync($task['taskList_id'],$time);
      $task['sync']=$time;
   }
}
我想使用一个参数作为索引来获取数组的值

我怎样才能做到这一点


因为另一个想法是在foreach for$tasks中的另一个foreach for$sync

没有看到完整的脚本,也没有在某些位置访问var_dump,所以很难说发生了什么,但这里有一些事情需要检查:

  • 确保您从数据库查询中获得结果,并且这些结果已分配给$tasks变量

  • 确保您的$sync数组值和$task['sync']是整数类型,而不是字符串或“我解决了我的问题”

    这是如果这是允许的,我测试了,它是

    $ar=array('1'=>'a','2'=>'b','3'=>'c');
    
    $index=2;
    
    echo $ar[$index];
    

    你能发布关于这个的完整脚本吗?你能显示$task数组outputh吗?
    $ar=array('1'=>'a','2'=>'b','3'=>'c');
    
    $index=2;
    
    echo $ar[$index];