我正在尝试利用 assoc 的结果之一。原始函数之外的 SQL 查询数组。 即我想在完全不同的函数中使用查询的 assoc 数组的值之一。 我首先将其设为变量,然后全局化。然后 我试图在其父函数之外回应它,但没有任何可见的东西。请引用我的代码 明晰。或者我可以在 mysqli 获取数组函数中运行不同的函数吗?
<?php
session_start();
include_once('server.php');
$gat = "";
if(isset($_POST['btn-login'])){
$query = "select * from users";
$conditions = array();
if(! empty($firstname)){
$conditions[] = "firstname='$firstname'";
}
if(! empty($lastname)){
$conditions[] = "lastname='$lastname'";
}
if(! empty($gender)){
$conditions[] = "gender='$gender'";
}
$sql = $query;
if(count($conditions) > 0){
$sql .= " WHERE " . implode(' AND ', $conditions);
}
$result = mysqli_query($conn, $sql);
while($users = mysqli_fetch_array($result, MYSQLI_ASSOC)){
$users['firstname'];
$users['firstname'] = $gat;
GLOBAL $gat;
$users['lastname'];
$users['id'];
}
//tried to echo value outside to be used for different function.
echo $gat;
}
?>
最佳答案
首先,您不需要在此处使用GLOBAL
。变量 $gat
定义在最外层作用域中,因此它在文件中的任何位置都可用。
你的问题就在这里。您将 $users['firstname'] 设置为等于 $gat
的值,此时它是一个空字符串:“”。如果您想执行相反的操作,请设置 $gat = $users['firstname']
。
所以转动这些行:
$users['firstname'];
$users['firstname'] = $gat;
GLOBAL $gat;
$users['lastname'];
$users['id'];
进入:
$users['firstname']; // 1
$gat = $users['firstname']; // 2
$users['lastname']; // 3
$users['id']; // 4
此外,我不确定您的确切意图是什么,但第 1、3 和 4 行什么也没做。
关于php - 在不同的函数中使用 sql assoc 数组的结果之一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50867599/