Php Wordpress主题函数在调用时不工作
我有一个wordpress站点,我想在我的functions.php中保存并进行数据库连接Php Wordpress主题函数在调用时不工作,php,mysql,mysqli,Php,Mysql,Mysqli,我有一个wordpress站点,我想在我的functions.php中保存并进行数据库连接 <?php function dbconnd() { $server = "localhost"; $duser = "wpuser"; $dpass = "wppass"; $dbname = "wpdb"; $conn = new mysqli($server, $duser,$dpass, $dbname); // Check connecti
<?php
function dbconnd() {
$server = "localhost";
$duser = "wpuser";
$dpass = "wppass";
$dbname = "wpdb";
$conn = new mysqli($server, $duser,$dpass, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
}
?>
所以我可以在我的模板中调用它。
以下是functions.php中的函数代码
<?php
function dbconnd() {
$server = "localhost";
$duser = "wpuser";
$dpass = "wppass";
$dbname = "wpdb";
$conn = new mysqli($server, $duser,$dpass, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
}
?>
但在下面的情况下,当我不调用该函数时,它可以完美地工作
<?php
$server = "localhost";
$duser = "wpuser";
$dpass = "wppass";
$dbname = "wpdb";
$conn = new mysqli($server, $duser,$dpass, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT * FROM orderform WHERE status='last';";
$result = $conn->query($sql);
?>
按照您现在的操作方式,$conn
只是函数内部的局部变量。因此,您无法通过这种方式获得函数外部的值
最好的解决办法是:
function dbconnd() {
$server = "localhost";
$duser = "wpuser";
$dpass = "wppass";
$dbname = "wpdb";
$conn = new mysqli($server, $duser,$dpass, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
else
return $conn;
}
然后在调用函数时,运行以下命令:
$conn = dbconnd();
另外,不要忘记在调用它的php文件中包含或要求functions.php文件。您可以使用class运行rawSQL
。(
)它现在工作得很好,我没有包括require functions.php,只有$conn=dbconnd();包括康恩的回报,谢谢