You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP报错Unsupported operand types: string + int的解决咨询

问题解决:PHP字符串与整数相加的类型错误

错误原因

你原代码遍历的是外层$dns数组,它的键是字符串'host',导致$i的值为字符串类型。PHP不支持字符串与整数直接执行加法运算,因此触发Uncaught TypeError: Unsupported operand types: string + int错误。

修正方案

方案1:遍历内层host数组(利用索引)

直接遍历$dns['host']这个目标数组,此时$i是从0开始的整数索引,加1后即可得到你需要的序号:

$dns = ['host'=>['mynewcomp2','www']];
$args = [];

foreach($dns['host'] as $i => $value){
    $j = $i + 1;
    $args['HostName'.$j] = $value;
}

方案2:手动维护计数变量

如果更倾向于直观的计数逻辑,可以声明一个外部变量从1开始计数,每次循环后自增:

$dns = ['host'=>['mynewcomp2','www']];
$args = [];
$count = 1;

foreach($dns['host'] as $value){
    $args['HostName'.$count] = $value;
    $count++;
}

最终效果

两种方案都会生成你期望的结果:

$args['HostName1'] = 'mynewcomp2';
$args['HostName2'] = 'www';

内容的提问来源于stack exchange,提问作者Ziad Nassar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 13:44:51