我无法从php数组中检索值

时间:2013-04-09 08:06:39

标签: php

以下是代码:

我无法在第二个功能中打印网站类型。当从一个不同的函数发送“all”作为参数时,我能够打印数组。

function site_type_find($site_type)
{
 $site_type_name_array=['Youtube','Wikipedia','Mashable','Wired'];
  if($site_type="all")
  return $site_type_name_array;
  else
  return $site_type_name_array[$site_type];
}
function display_topic_category_sitetype($topic_id,$category_id,$site_type)
{
  $result=mysql_query("select topic_name from topic_table where topic_id=$topic_id");
  $result1=mysql_query("select category from categorytable where category_id=$category_id");
  $site_type_name=site_type_find($site_type);
  $resultarr=array();
  $resultarr1=array();
  $resultarr=mysql_fetch_array($result);
  $resultarr1=mysql_fetch_array($result1);
  $topic=$resultarr[0];
  $catname=$resultarr1[0];
?>
  <section>
  <header><?php echo $topic."\n";?></header>
  <article><?php echo $catname."\n";?></article>
  <article><?php echo $site_type_name."\n";?></article>
<?php
}

4 个答案:

答案 0 :(得分:5)

您应该使用==代替=作为比较运算符。

这是第4行:

if($site_type="all") // use two =

答案 1 :(得分:5)

使用==代替=作为比较运算符。

在第4行,使用下面的代码。

if($site_type=="all") 

其中:

==用于checking equality OR用于comparison目的。

=用于assigning values到php变量。

答案 2 :(得分:1)

变化

if($site_type="all")

if($site_type=="all")

答案 3 :(得分:1)

单个等于运算符(=)是一个赋值运算符,一个双等于运算符(==)是一个比较运算符,所以你必须在这里使用if($site_type=="all") bcoz进行比较所有

$site_type的值