【发布时间】:2013-09-25 04:46:51
【问题描述】:
我有以下数组,我想将每个 [Entry] 值从字符串更改为整数:
数组 ( [0] => 数组 ( [时间] => 06:08:00 [条目] => 250 ) [1] => 数组 ( [时间] => 08:08:00 [条目] = > 230)
我正在尝试这种方式,这似乎会更改循环内的类型,但更改似乎不会在循环外生效。我是这方面的新手,所以我可能忽略了一些东西,而且很可能是一种更简单的方法来实现这一点。
foreach($data as $inner) {
foreach($inner as $key=>$val) {
if($key == 'Entry') {
$newval = intval($val);
$val = $newval;
echo(gettype($val));//integer
}
}
}
echo(gettype($data[0]['Entry'])); //string
【问题讨论】:
-
您没有更改数组的字段。试试这个
$inner[$key] = intval($val) -
引用的 $key 是值的一个实例,而不是数组本身的引用。试试...
$data[$key] = (int)$value. -
为什么你想这样做?一般来说,您不需要关心 php.ini 中的“类型”。 (某些特殊情况除外)。
-
我想对数组进行 json_encode 并在 Ajax 调用中传递它,我需要将值设为整数。我认为在服务器端这样做会更容易。
-
@user2232681 但是 javascript 在大多数情况下也并不真正关心类型......