codecamp

CodeIgniter4 数据库快速入门:示例代码

这个页面包含的示例代码将简单介绍如何使用数据库类。更完整的信息请参考每个函数/类单独的介绍页面。

初始化数据库类

下面的代码将根据你的 数据库配置 加载并初始化数据库类:

$db = \Config\Database::connect();

数据库类一旦载入,你就可以像下面介绍的那样使用它。

注意:如果你所有的页面都需要连接数据库,你可以让其自动加载。参见 数据库连接

多结果标准查询(对象形式)

$query = $db->query('SELECT name, title, email FROM my_table');
$results = $query->getResult();


foreach ($results as $row)
{
        echo $row->title;
        echo $row->name;
        echo $row->email;
}


echo 'Total Results: ' . count($results);

上面的 getResult() 函数返回一个 对象数组 。例如:$row->title

多结果标准查询(数组形式)

$query = $db->query('SELECT name, title, email FROM my_table');
$results = $query->getResultArray();


foreach ($results as $row)
{
        echo $row['title'];
        echo $row['name'];
        echo $row['email'];
}

上面的 getResultArray() 函数返回一个 二维数组 。例如:$row[‘title’]

单结果标准查询(对象形式)

$query = $db->query('SELECT name FROM my_table LIMIT 1');
$row = $query->getRow();
echo $row->name;

上面的 getRow() 函数返回一个 对象 。例如:$row->name

单结果标准查询(数组形式)

$query = $db->query('SELECT name FROM my_table LIMIT 1');
$row = $query->getRowArray();
echo $row['name'];

上面的 getRowArray() 函数返回一个 一维数组 。例如:$row[‘name’]

标准插入

$sql = "INSERT INTO mytable (title, name) VALUES (".$db->escape($title).", ".$db->escape($name).")";
$db->query($sql);
echo $db->getAffectedRows();

使用查询构造器查询数据

查询构造器模式 提供给我们一种简单的查询数据的途径:

$query = $db->table('table_name')->get();


foreach ($query->getResult() as $row)
{
        echo $row->title;
}

上面的 get() 函数从给定的表中查询出所有结果。 查询构造器 提供了所有数据库操作的快捷函数。

使用查询构造器插入数据

$data = array(
        'title' => $title,
        'name' => $name,
        'date' => $date
);


$db->table('mytable')->insert($data);  // 生成: INSERT INTO mytable (title, name, date) VALUES ('{$title}', '{$name}', '{$date
CodeIgniter4 在视图文件中使用PHP替代语法
CodeIgniter4 数据库配置
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }