2011-06-05 44 views
1

我不知道如何访问外部.php文件中的drupal变量。 在模块I分配变量,以便在模板中使用它:如何从外部php中的模块获取drupal var?

$variables['teams'] = $output; 

在模板文件中,我可以通过访问它:

<?php foreach ($teams as $row) { ?> 
<?php print $row['team_name']?> 
<?php } ?> 

,但我想访问这个变量从另一个外部的PHP文件。我该怎么做?

回答

0

你应该给我们一些关于你在哪里使用这个变量的计划。 如果你打算在模板文件中使用变量,$变量应该没问题,否则你可以将它存储在某个地方或设置为全局变量。如果你想从另一个模块中使用它,你应该确保设置变量的钩子已经在计划使用变量的钩子之前运行。如果它们是相同的钩子(即nodeapi),请确保第二个模块的重量更高。 如果您需要在Drupal引导之外使用该变量,请将其存储。您可以使用drupal_cache_set或variable_set。 “

0

您必须包含生成该变量的脚本。

或者,在代码中找到该变量生成的位置。
例如,如果
$output = SomeClass::SomeMethod();
您可以将此代码移至您的脚本。

阅读更多关于scopes of variables的手册。

+0

对不起,我不明白这个”或者,在代码中找到该变量生成的位置 例如,如果 $ output = SomeClass :: SomeMethod();“这个变量$输出是通过查询db获得的。 – Alex 2011-06-05 08:26:59