Атрибут объекта доступа с переменной?

Не уверен, что название именно то, что я хочу сделать. Ниже мой рабочий код.

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-> Tables_in _ {$ _ POST [database]} в некотором роде? Я пробовал пару различных способов, включая различное размещение кавычек и фигурных скобок, мне пришлось прибегнуть к назначению всего атрибута переменной $ tables_in_db, а затем использовать эту переменную для доступа к атрибуту.

У вас есть правильная идея, просто не правильный синтаксис. Свойства переменной могут принимать форму одной переменной ( $a->$b ) или другого выражения, которое возвращает строку, содержащую имя свойства ( $a->{'b'} ).

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

Кроме того, используя одну из других функций mysql_fetch_* , зная, что имя столбца станет неактуальным. Например, mysql_fetch_array() или mysql_fetch_row() и доступ к элементу $row[0] .