Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.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_Count - Fatal编程技术网

php获取数组中给定实例的编号

php获取数组中给定实例的编号,php,count,Php,Count,基本上,我想做一个表格,每一行的颜色都会略有变化 我将命名每一个偶数行class=“偶数”和每一个奇数行class=“奇数” 在我的循环中,我需要知道数组的实例是奇数还是偶数 我几乎可以通过写作来做到这一点: if (count($row)%2 == 0) //while $row is an array from a mysql query { echo "<tr class='even'>"; if (count($row)%2 == 1) {

基本上,我想做一个表格,每一行的颜色都会略有变化

我将命名每一个偶数行
class=“偶数”
和每一个奇数行
class=“奇数”

在我的循环中,我需要知道数组的实例是奇数还是偶数

我几乎可以通过写作来做到这一点:

if (count($row)%2 == 0)  //while $row is an array from a mysql query
    {
    echo "<tr class='even'>";

if (count($row)%2 == 1)
    {
    echo "<tr class='odd'>";
    }
if(count($row)%2==0)//而$row是来自mysql查询的数组
{
回声“;
如果(计数($row)%2==1)
{
回声“;
}
但是,通过编写
count($row)
可以得到整个数组的计数,而不是实例的数量,这表明它在整个数组中的位置。关于如何获得数组中实例的数量,有什么想法吗


谢谢

试试这样的方法:

$i = 0;
while ($i < count($row)) {
  if (($i % 2) == 0) {
    echo "<tr class='even'>";
  } else {
    echo "<tr class='odd'>";
  }
  $i++;
}
$i=0;
而($i
尝试以下方法:

$i = 0;
while ($i < count($row)) {
  if (($i % 2) == 0) {
    echo "<tr class='even'>";
  } else {
    echo "<tr class='odd'>";
  }
  $i++;
}
$i=0;
而($i
不要为此使用PHP。请使用CSS:

tr:nth-child(even) {background: #CCC}
tr:nth-child(odd) {background: #FFF}

不要为此使用PHP。请使用CSS:

tr:nth-child(even) {background: #CCC}
tr:nth-child(odd) {background: #FFF}

您可以使用计数器:

$i = 0   
while($row=mysql_fetch_array($yourquery)) {
   if ($i % 2 == 0) {
      echo "<tr class='even'>";
   } else {
      echo "<tr class='odd'>";
   } 
   $i++;   
}     
$i=0
while($row=mysql\u fetch\u数组($yourkquery)){
如果($i%2==0){
回声“;
}否则{
回声“;
} 
$i++;
}     

您可以使用计数器:

$i = 0   
while($row=mysql_fetch_array($yourquery)) {
   if ($i % 2 == 0) {
      echo "<tr class='even'>";
   } else {
      echo "<tr class='odd'>";
   } 
   $i++;   
}     
$i=0
while($row=mysql\u fetch\u数组($yourkquery)){
如果($i%2==0){
回声“;
}否则{
回声“;
} 
$i++;
}     

别忘了递增
$i
@Jared Ng:你的编辑不会产生你所期望的结果。你应该在while主体的末尾递增。这应该没有问题。对不起,我已经有一段时间没有接触PHP了。别忘了递增
$i
@Jared Ng:你的编辑不会产生你所期望的结果。你应该递增一个不是while主体的结尾。这应该没有问题。对不起,我已经有一段时间没有接触PHP了……它仍然需要使用PHP生成。Jeff的内容可能不是静态的,因为他提到了一个数据库查询。@Jared:他的内容可以是动态的,这并不意味着他应该使用PHP作为样式。这个答案不能解决他的pr这是一个PHP问题,而不是CSS问题。此外,没有人说他没有使用CSS。根据
n,很多浏览器(尤其是IE)不支持第n个child
@JRL这个css功能非常好——比愚蠢的类名简单得多——谢谢……仍然需要使用PHP生成。Jeff的内容可能不是静态的,因为他提到了一个数据库查询。@Jared:他的内容可以是动态的,但这并不意味着他应该使用PHP作为样式。这个答案并不能解决他的问题,这是一个PHP一个,不是CSS。此外,没有人说他没有使用CSS。据
n称,很多浏览器(尤其是IE)不支持第n个child
。@JRL此CSS功能非常好——比愚蠢的类名简单得多-谢谢