这里的第一次海报......
只是想知道是否有人可以帮助我将我的功能结果变成一个全局变量,我可以在另一个php页面中使用...
$sql = "SELECT title FROM table_1 WHERE id >= '1' and id <='10'";
function dbCall($servername, $username, $password, $dbname, $sql) {
global $item;
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
// output data of each row
while($row = mysqli_fetch_array($result)) {
$item=("'". $row[0]."', ");
echo $item;
}
} else {
echo "0 results";
}
return $list;
$conn->close();
}
目前它返回结果列表:
'tom', 'mary', 'joseph', 'jim', 'kathy', 'bob', 'luke', 'sam', 'heidi', 'tiffany',
但是我不能在我的其他php页面中将其称为全局变量...
有人可以帮忙吗?
编辑:
实际上,当我打电话给我时,我会把这个打到另一页:
include ("C:\inetpub\wwwroot\db-call.php");
$varList = array(dbCall($servername, $username, $password, $dbname));
echo $varList;
我得到了这个结果:
'tom', 'mary', 'joseph', 'jim', 'kathy', 'bob', 'luke', 'sam', 'heidi', 'tiffany',Array
再次感谢!---
谢谢,
答案 0 :(得分:1)
更改您的函数以返回值,而不是打印值:
function dbCall($servername, $username, $password, $dbname, $sql) {
$item = [];
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
// output data of each row
while($row = mysqli_fetch_array($result)) {
$item[] = $row[0];
}
} else {
$item[] = "0 results";
}
$conn->close();
return $item;
}
现在你这样打电话:
include ("C:\inetpub\wwwroot\db-call.php");
$varList = dbCall($servername, $username, $password, $dbname);
echo $varList;
您的$varList
包含数组,您可以根据需要处理这些值
Array
(
[0] => tom
[1] => mary
[2] => joseph
[3] => jim
[4] => kathy
[5] => bob
[6] => luke
[7] => sam
[8] => heidi
[9] => tiffany
)
答案 1 :(得分:0)
可能更好的方法是将此文件包含在您要使用的页面中,并调用该函数以获取列表。