使用PHP中另一个文件的函数返回值

时间:2014-12-06 21:19:21

标签: php file function return require

我在一个单独的文件中使用一个函数,得到的应该返回一个包含字段枚举值的数组:

<?php 
function getEnumValues($table, $field) {
$enum_array = array();
$query = "SHOW COLUMNS FROM '{$table}' WHERE Field = '{$field}'";
$result = mysqli_query($query);
$row = mysqli_fetch_row($result);
preg_match_all('/\'(.*?)\'/', $row[1], $enum_array);
return $enum_array;
}
?>

在主文件中,我这样做:

<?php
require 'common.php';
for ($i=0; $i <= 5; $i++) {
                getEnumValues(property, value_type);
                echo "<input type='radio' name='tipo_valor' value='$enum_array[$i]' required>" . '  ' .$enum_array[$i] . '<br>';
            }
?>

问题是该函数什么都不返回。

我需要的功能是否正常? 我可以使用另一个文件中返回的变量作为局部变量吗?

感谢您的时间和建议!

1 个答案:

答案 0 :(得分:2)

该函数返回一个值;你只是没有抓住它。函数体中的$ enum_array仅存在于该函数的范围内。您需要将函数的返回值放在范围内的变量中。在您的主文件中:

<?php
require 'common.php';
for ($i=0; $i <= 5; $i++) {
            $enum_array = getEnumValues(property, value_type);
            echo "<input type='radio' name='tipo_valor' value='$enum_array[$i]' required>" . '  ' .$enum_array[$i] . '<br>';
        }
?>