我似乎无法从函数中获得$sql_result_array
上的数组。
function function_name($query, $table_name){
global $connection;
$sql_query = " SELECT * FROM {$table_name} WHERE name = '{$query}' ";
$sql_result = mysql_query($sql_query, $connection);
$sql_result_array = mysql_fetch_array($sql_result);
}
function_name($value1, $value2);
print_r($sql_result_array); // (outputs) Undefined variable: sql_result_array
关于如何获得该数组可用的函数外的任何建议?
你可以做
print_r(function_name($value1, $value2));
或
$sql_result_array = function_name($value1, $value2)
print_r($sql_result_array);
这里的一般思想是,你在函数内部声明的任何变量只在该函数内部可用。所以如果你有
function a() {
$i = 5;
return $i;
}
在该函数之外,$i
不存在。或者如果它确实存在,将$i
设置为5在该函数内,不会改变该函数外的$i
的值。这很好,因为否则,您将不得不在任何地方使用唯一的变量名,否则您永远不会知道某个值是否在其他地方被更改了。
我们return $i
所以我们想在函数外使用这个值,我们可以。但我们要么赋值给它
$other_variable = a();
或者直接使用
do_something_else(a())