【发布时间】:2020-12-21 20:07:34
【问题描述】:
我正在尝试将 WP 中的查询用作全局变量(是的,我知道尽可能避免使用这些查询,但这是我将一遍又一遍地引用的查询,所以对我来说,写出每个函数的相同查询)。我一定遗漏了一些东西,因为全局变量似乎不起作用。 我是如何定义变量的:
$query = $wpdb->get_results("SELECT columnn1, column2 FROM mytablename");
function query() {
global $query;
return $query;
};
然后当我后来在一个函数中引用它时,我使用了:
fucntion xyz{
$results = $query;
//does things
}
我做错了什么吗?它不工作。
编辑 1:
$query = $wpdb->get_results("SELECT columnn1, column2
FROM mytablename");
function query() {
global $query;
return $query;
};
然后当我后来在一个函数中引用它时,我使用了:
fucntion xyz{
global $query
$results = $query;
//does things
}
【问题讨论】:
-
您可以使用 $GLOBALS['query'] 访问查询变量的全局值。假设你有一个函数,你想在其中使用查询变量 $query = "Some string";
function use_query_here() { global $query; $results = $query; //Use $results here now or you can use $query also directly but if will risk mutating its value <br /> }或function use_query_here() { $result = $GLOBALS['query']; // Use $result variable here now } -
所以应该是 $results=$GLOBAL['query'] ?
-
谢谢,上面的一切都是正确的,只是我没有在我想在其中使用它的函数中定义全局 $query,对吗?
-
是的,global 关键字不是在全局范围内定义变量,而是在您想从函数内部的全局范围内访问某个变量时使用它
-
我在上面编辑了我的设置方式。但它不工作,我的编辑 1,它应该如何工作?
标签: php global globalization