RedBeanPHP中如何将查询返回的数组转换为整数?求助
解决RedBeanPHP中getRow返回数组无法直接echo的问题
问题核心是R::getRow()返回的是关联数组,而echo仅支持输出字符串或数值类型,直接输出数组必然触发"Array to string conversion"警告。你需要从数组中提取具体数值后再输出,这里提供两种常用方案:
方案1:直接通过数组键名取值
你的查询结果数组的键是SUM(view),直接通过该键获取对应值即可:
$row = R::getRow('SELECT SUM(view) FROM posts WHERE author LIKE ? LIMIT 1', ['dffdfghdfgdf']); echo $row['SUM(view)']; // 输出27
方案2:给聚合函数起别名(更推荐)
在SQL中为SUM(view)指定一个简洁的别名,让数组键名更直观,提升代码可读性:
$row = R::getRow('SELECT SUM(view) AS total_views FROM posts WHERE author LIKE ? LIMIT 1', ['dffdfghdfgdf']); echo $row['total_views']; // 输出27
额外提示:如果查询无匹配结果(比如目标author不存在),SUM(view)会返回NULL,可以添加空值处理避免异常:
echo $row['total_views'] ?? 0; // 无结果时输出0
内容的提问来源于stack exchange,提问作者Taras
相关产品推荐
相关产品推荐

