php - 查询结果数组,每一行的列字段为字符串

标签 php mysql codeigniter codeigniter-2

我正在使用 CodeIgniter,我在我的一个模型(.php 文件)中编写了以下代码,以对匹配查询的每一行的一个列值执行 preg_split 操作。

对于上下文,我不知道如何调试这样的后端操作并且迷路/害怕炸毁数据库。问题是我不知道我是在对字符串还是数组值执行 preg_split 操作。

fruits 列的字段类型是 varchar(32),它是一个字符串,但是调用 $row['fruits'] 真的会返回一个纯字符串吗?

$query = $this->db->query($sql);
foreach ($query->result_array() as $row) {
    //  theoretically $s = 'apple banana'
    $s = $row['fruits'];
    //  theoretically parts[0]=apple, parts[1]=banana
    $parts = preg_split('/\s+/', $s); 
}

最佳答案

如果您因为害怕丢失数据库而不想尝试和调试:

1) 你会经历一段糟糕的时光,所以你应该找到一种在测试时不危及数据的方法

2) 你可以尝试强制执行字符串:$s = (string) $row['fruits']; 即使它应该已经是一个字符串

关于php - 查询结果数组,每一行的列字段为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31732385/

相关文章:

php - 在 linux 命令中使用多个 awk 语句

mysql - 如何将值插入到 Mysql 哈希分区表中?

php - 我可以在 Tungsten Replicator for MySQL 中使用 codeigniter session_id 到 SmartScale sessionid 吗?

php - 从表中找出相关数据

php - Symfony2 : Functional testing is failing during Fixtures load

php - mysqli错误fetch_assoc()

php - 向数据库提交多个值

mysql - 无法授予 MySQL 用户对 information_schema 数据库的访问权限

mysql - 从将数字保存为字符串的列中获取最小值

php - 提交表格时先批准