gpt4 book ai didi

php - 如何在 PHP 中使用 PDO 从数据库获取参数

转载 作者:行者123 更新时间:2023-11-29 13:36:18 25 4
gpt4 key购买 nike

我正在开发一个安装类来管理存储在数据库中的一些参数,并且我试图使一个类有效且更短,所以我这样做了:

首先,我添加一个 db.php 文件,在其中配置和连接数据库,然后将参数添加为私有(private)属性。为了以更好的方式处理它们,所有这些都包含在一个数组中,因此我在变量“consulta”中构建查询处理信息并从数据库中一一检索值

<?php
require 'db.php';

class setup {
private $lenguaje;
private $charset;
private $sitio_titulo;
private $sitio_descripcion;
private $kewords;
private $autor;
private $path_css_frontend;
private $path_css_backend;
private $path_modernizr;
private $path_jquery;
private $logo_url;
private $copyright;
private $dbconn;
private $site_version;

//编辑 - 仅为了可见性而分隔的代码,属于同一类的一部分

    public function __construct() {
$this->dbconn = new database ();
}
private function fillData() {
$valores = array (
lenguaje,
charset,
sitio_titulo,
sitio_descripcion,
kewords,
autor,
path_css_frontend,
path_css_backend,
path_modernizr,
path_jquery,
logo_url,
copyright,
dbconn,
site_version
);
$this->getData($valores);
}

//编辑 - 仅为了可见性而分隔的代码,属于同一类的一部分

public function getData($columnName) {

while($columnName){

$consulta = 'SELECT $columnName from config LIMIT 1';

$this->dbconn->query ( $consulta );

$this->dbconn->execute ();

$r = $this->dbconn->fetch (); //

'$this->'.$columnName = $r;

}

}

?>

我做错了什么吗?

最佳答案

当然。
你只是设法让它变得又长又无效。
这是一个改进的版本:

<?php
require 'db.php';
$dbconn = new database();

class setup
{
public function __construct($dbconn)
{
$this->dbconn = $dbconn;
$this->fillData();
}

private function fillData()
{
$data = $this->getData();
foreach ($data as $key => $value)
{
$this->$key = $value;
}
}
private function getData()
{
$sql = 'SELECT * FROM config';
return $this->dbconn->query($sql)->fetchAll(PDO::FETCH_ASSOC);
}
}

关于php - 如何在 PHP 中使用 PDO 从数据库获取参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18690909/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com