标题中代码的整个子例程是:
sub histogram { # Counts of elements in an array
my %histogram = () ;
foreach my $value (@_) {$histogram{$value}++}
return (%histogram) ;
}
我正在尝试将Perl脚本转换为PHP并且我遇到了困难(我真的不知道Perl的任何内容,但我正在尝试)。
那么如何将此{$histogram{$value}++}
放入PHP?
谢谢!
答案 0 :(得分:11)
{$histogram{$value}++}
定义一个块,在Perl中,块的最后一行不需要终止分号,因此它等同于{$histogram{$value}++;}
。
现在,PHP中的hash相当于一个关联数组,我们使用[]来访问该数组中的元素:
$hash{$key} = $value; // Perl
$ass_array[$key] = $value; // PHP
PHP中的等效函数类似于:
function histogram($array) {
$histogram = array();
foreach($array as $value) {
$histogram[$value]++;
}
return $histogram;
}
答案 1 :(得分:5)
<?php
$histogram = array_count_values($array);
?>
答案 2 :(得分:0)
foreach my $value (@_) {$histogram{$value}++}
它是单行变体:
foreach my $value (@_) {
$histogram{$value}++
}