Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将php变量传递到gravity窗体钩子中_Php_Variables - Fatal编程技术网

将php变量传递到gravity窗体钩子中

将php变量传递到gravity窗体钩子中,php,variables,Php,Variables,我想我对返回和回显变量感到非常困惑 我有这个 这起作用并返回“砰!”作为我的表单字段的默认变量 对于一般文本字符串来说,这是非常直接的,但是我尝试返回一个PHP变量 我正在我的functions.PHP中加载facebook PHP SDK,加载范围比重力表单挂钩更大。facebook SDK绝对有效,例如,我目前在我的wordpress主题文件中重复了这一点 echo $userData['name'] 但我的问题是,如果我尝试在钩子的重力中返回上面的变量,为什么它不起作用 请看我在下面尝

我想我对返回和回显变量感到非常困惑

我有这个

这起作用并返回“砰!”作为我的表单字段的默认变量

对于一般文本字符串来说,这是非常直接的,但是我尝试返回一个PHP变量

我正在我的functions.PHP中加载facebook PHP SDK,加载范围比重力表单挂钩更大。facebook SDK绝对有效,例如,我目前在我的wordpress主题文件中重复了这一点

echo $userData['name']

但我的问题是,如果我尝试在钩子的重力中返回上面的变量,为什么它不起作用

请看我在下面尝试了什么,但它没有返回任何结果

add_filter('gform_field_value_facebook_name', 'my_custom_population_function');
function my_custom_population_function($value){
    return $userData['name'];
}

我在wordpress functions.php中也尝试过类似的方法,在尝试回显过滤器中的变量时

$fb_app_id      = '12345678910';

// APP ID FILTER
add_action( 'fb_app_id', 'echo_fb_app_id' );
function echo_fb_app_id() {
    echo $fb_app_id;
}
但这不会返回任何内容,并且范围是相同的


有人能告诉我为什么我不能传递这些变量吗。我认为这是一个专业术语。非常感谢。

这是因为在PHP中,如果没有
global
关键字,函数不会读取全局变量

$fb_app_id      = '12345678910';

// APP ID FILTER
add_action( 'fb_app_id', 'echo_fb_app_id' );
function echo_fb_app_id() {
    global $fb_app_id; // tells PHP to use the global variable
    echo $fb_app_id;
}

尝试添加
global$userData
到你的
my_custom_population_函数

或者像这样的$GLOBALS['fb\u app\u id']Massive thanky you@Rocket-你的两个解决方案都起作用了-我想我把javascript的作用域和php如何使用更高的变量搞混了。@Joshc:是的,这在javascript中也会起作用。PHP略有不同。
$fb_app_id      = '12345678910';

// APP ID FILTER
add_action( 'fb_app_id', 'echo_fb_app_id' );
function echo_fb_app_id() {
    global $fb_app_id; // tells PHP to use the global variable
    echo $fb_app_id;
}