我正在尝试自动生成 mysqli_fetch_array 列结果,例如:
$column_name=$rows["column_name"];
这些值存储在数组“$lang_news_cols_arr”中,用作:
foreach($lang_news_cols_arr as $lang_news_col_name) {
$news_rows .= '$'.$lang_news_col.'=$rows["'.$lang_news_col.'"];';
}
$news_rows 将得到以下结果:
$column_name_1=$rows["column_name_1"];
$column_name_2=$rows["column_name_2"];
$column_name_3=$rows["column_name_3"];
etc...
最后用作:
while ($rows = mysqli_fetch_array ($query) ) {
$news_rows;
}
我无法获取获取数组中 $news_rows 的值。非常感谢任何帮助。
最佳答案
$news_rows 是一个字符串变量,如果没有明确指示,php 不会将其内容作为代码执行。从技术上讲,您可以通过调用 eval()
函数来做到这一点,但您确实不应该这样做,因为它会带来巨大的安全风险。 eval()
可以执行任意 php 代码,因此,如果恶意用户设法将自己的代码注入(inject) $news_rows,那么 eval()
也会运行该代码。
我将简单地使用关联数组来存储结果,其中键是列名称。
关于php - 自动生成 mysqli_fetch_array 列结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39267567/