【问题标题】:php get element position in array [closed]php获取数组中的元素位置[关闭]
【发布时间】:2013-03-15 14:34:13
【问题描述】:

我尝试在我的数组中获取元素的位置,但这不起作用, 这是我的代码:

<?php
function getWorldRank(){
$query = ("SELECT nickname FROM users ORDER BY score, updateDate Desc ");

mysql_query("SET NAMES 'utf8'");

//GOES TO THE DB WITH THE QUERY
$result = mysql_query($query);

//CHECKS IF THE QUERY IS LEGAL
if(!$result)
return false;

//CHECKS IF THERE ARE NO ROWS FOUND IN THE TABLE
if(mysql_num_rows($result)==0)
return false;

    while($row = mysql_fetch_array($result, MYSQL_ASSOC))
    {
         $returned_array[] = $row;
    }
    return $returned_array;

       }

      $a=getWorldRank();



    echo $key = array_search('vvvv', $a); 
    echo $key = array_search('bbbb', $a); 

 ?>

【问题讨论】:

  • 所以您编写了错误代码并希望我们为您修复错误?这不是它的工作原理
  • $a 是一个数组数组。您需要搜索 $a 中的每个数组,而不是 $a 本身。
  • 您在 array_search 之前返回...
  • 我不明白我的代码有什么问题。当我打印数组时,我可以看到所有元素
  • 在能够声称某事“不工作”之前,必须首先确定“工作”的含义。

标签: php arrays indexing position


【解决方案1】:

试试这个:

function getWorldRank() {
  $query = ("SELECT nickname FROM users ORDER BY score, updateDate Desc ");
  mysql_query("SET NAMES 'utf8'");

  //GOES TO THE DB WITH THE QUERY
  $result = mysql_query($query);

  // CHECKS IF THE QUERY IS LEGAL
  if(!$result) {
    return false;
  }

  // CHECKS IF THERE ARE NO ROWS FOUND IN THE TABLE
  if(!mysql_num_rows($result)) {
    return false;
  }

  $returned_array = array();

  while($row = mysql_fetch_assoc($result)) {
    $returned_array[] = $row['nickname'];
  }
  return $returned_array;
}

$a = getWorldRank();

if(!$a) {
  print 'No results returned by database';
} else {
  echo 'vvvv key: ' . array_search('vvvv', $a); 
  echo 'bbbb key: ' . array_search('bbbb', $a); 
}

【讨论】:

    【解决方案2】:

    你想换一行:

    $returned_array[] = $row;
    

    $returned_array[] = $row['nickname'];
    

    那么你将返回一个数组,而不是数组数组。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-19
      • 1970-01-01
      • 2014-05-09
      • 2015-07-01
      • 2019-08-15
      • 1970-01-01
      相关资源
      最近更新 更多