使用变量访问对象属性?

时间:2011-10-07 19:45:40

标签: php sql

不确定标题是否正是我想要做的。以下是我的工作代码。

        mysql_select_db($_POST[database]);
        $table_list = mysql_query('SHOW TABLES');
        $tables_in_db = "Tables_in_" . $_POST[database];
        while ($row = mysql_fetch_object($table_list)) {
            echo "<tr>
                    <td class='pageBody'>" . $row->$tables_in_db . "</td>
                  </tr>";
        }

是否可以删除第4行并使用$ row-&gt; Tables_in _ {$ _ POST [database]}以某种方式访问​​object属性?我尝试了几种不同的方式,包括各种引号和花括号,我不得不求助于将整个属性赋值给变量$ tables_in_db,然后使用该变量来访问属性。

1 个答案:

答案 0 :(得分:3)

你有正确的想法,只是没有正确的语法。变量属性可以采用单个变量($a->$b)的形式,也可以采用其他表达式返回包含属性名称的字符串($a->{'b'})。

$row->{'Tables_in_' . $_POST['database']}

除此之外:使用其他mysql_fetch_*函数之一,知道列名称将变得无关紧要。例如,mysql_fetch_array()mysql_fetch_row()并访问$row[0]项。