如何返回一个嵌套在if else结构中的变量,用于另一个函数,该函数在第一个函数中改变返回变量的结果的程序流? 这是程序的基本结构,if和else语句可以包含更多if else语句,这就是我深入使用单词的原因。我如何在第二个函数中使用变量?
e.g。
function this_controls_function_2($flow) {
if($flow == 1) {
$dothis = 1;
return $dothis;
}
else {
$dothis = 2;
return $dothis;
}
}
function this_is_function_2() {
if($dothis == 1) {
//DO SOMETHING
}
else {
//DO SOMETHING
}
}
答案 0 :(得分:4)
function this_is_function_2($flow) {
$dothis = this_controls_function_2($flow);
if($dothis == 1) {
//DO SOMETHING
}
else {
//DO SOMETHING
}
}
或者,如果你想调用函数2之外的第一个函数:
function this_is_function_2($dothis) {
if($dothis == 1) {
//DO SOMETHING
}
else {
//DO SOMETHING
}
}
$dothis = this_controls_function_2($flow);
this_is_function_2($dothis);
答案 1 :(得分:1)
你要么直接从函数中读取返回的变量:
function this_is_function_2() {
if(this_controls_function_2($flow) == 1) {
//DO SOMETHING
}
else {
//DO SOMETHING
}
}
或者您将变量标记为全局:
function this_controls_function_2($flow) {
global $dothis;
if($flow == 1) {
$dothis = 1;
return $dothis;
}
else {
$dothis = 2;
return $dothis;
}
}
function this_is_function_2() {
global $dothis;
if($dothis == 1) {
//DO SOMETHING
}
else {
//DO SOMETHING
}
}
为此,函数调用的顺序必须适合:
this_controls_function_2($flow);
/* ... */
this_is_function_2();