php - if Statement not finiding variable when inside function (Wordpress Plugin)
问题描述
The variable is not accessable inside the funtion. When I echo the variable outside the function I get the correct result. When I echo/use the variable inside the function I get a 'Notice: Undefined variable: crLocalIncompleteStatus in /setup.php on line 35'
Any ideas?
<?php
global $wpdb;
$table_name = $wpdb->prefix . 'crLocal';
$crLocalIncompleteStatus = '';
$crLocalCompleteStatus = '';
$crLocal_DBChecked = $wpdb->get_var("SELECT COUNT(*) FROM $table_name");
function crLocal_CheckDB() {
global $crLocal_DBChecked, $crLocalIncompleteStatus, $crLocalCompleteStatus;
if ($crLocal_DBChecked == '0') {
$crLocalIncompleteStatus = 'block' ;
$crLocalCompleteStatus = 'none' ;
} elseif ($crLocal_DBChecked != '0') {
$crLocalIncompleteStatus = 'none' ;
$crLocalCompleteStatus = 'block' ;
} else {
// Broken
// More Code to follow
}
echo $crLocal_DBChecked;
}
crLocal_CheckDB();
$crLocalInstallIncomplete = '<div id="crLocalInstallIncomplete" style="display: '.$crLocalIncompleteStatus.';">' ;
$crLocalInstallComplete = '<div id="crLocalInstallComplete" style="display: '.$crLocalCompleteStatus.';">' ;
?>
So I need:
$crLocalIncompleteStatus to be 'block' when the count is 0 from the database and 'none' when its above 0.
$crLocalCompleteStatus to be 'none' when the count is 0 from the database and 'block' when its above 0.
解决方案
这是因为您的变量 $crLocalIncompleteStatus 超出了函数的范围,您可以通过将变量作为参数添加到函数来纠正此问题
function crLocal_CheckDB($crLocalIncompleteStatus) {
global $crLocal_DBChecked, $crLocalIncompleteStatus, $crLocalCompleteStatus;
if ($crLocal_DBChecked == '0') {
$crLocalIncompleteStatus = 'block' ;
$crLocalCompleteStatus = 'none' ;
} elseif ($crLocal_DBChecked != '0') {
$crLocalIncompleteStatus = 'none' ;
$crLocalCompleteStatus = 'block' ;
} else {
// Broken
// More Code to follow
}
echo $crLocal_DBChecked;
}
crLocal_CheckDB($crLocalIncompleteStatus);
推荐阅读
- r - R语言内维计算的进展
- r - 如何在 R 中使 xspline 曲线对称?
- spring - Spring JPA + H2 DB:保存字段值不区分大小写
- python - 两个数据框python的简单线性回归
- python - 未定义 Django Teamplate 错误名称“Post_title”
- c# - 我应该如何处理 MVVM c# 应用程序中的多线程
- python - 如何加载 .pb vgg16 训练模型
- python - 使用 Python OpenCV 库单击鼠标在图像上绘制线条
- node.js - 使用 ES6 模块在 Heroku 中部署 Node 应用程序?
- swift - 本地视频在离开视图控制器后在背景中有声音