PHP如何将两个十进制列表一起添加

时间:2014-09-30 01:53:54

标签: php decimal

public function Encrypt($message)
    {
        $character = str_split($message);
        $encrypted = '';

        foreach ($character as $character)
        {
            $encrypted .= (ord($character). '.');

        }
       return $encrypted; 
    }

我使用该代码生成ASCII码。我生成的结果示例

$a = 1.2.4.3.4.3
$b = 1.4.3.2.4.3

然后我想要两者(1 + 1,2 + 4,4 + 3,3 + 2,4 + 4,3 + 3)然后结果是

$c = 2.6.7.5.8.6

有可能吗?任何人都可以帮助我。

2 个答案:

答案 0 :(得分:2)

这绝对可能:

$a = '1.2.4.3.4.3';
$b = '1.4.3.2.4.3';


$result = join('.', array_map(
    function($a, $b) { return $a + $b; },
    explode('.', $a),
    explode('.', $b)
));


var_dump($result);

说明:

  1. .
  2. 拆分
  3. 总结
  4. 加入
  5. Ideone:http://ideone.com/uzBVed

答案 1 :(得分:1)

也许您可以使用这样的功能?

function add_number_strings($a, $b) {
    $a_arr = explode('.', $a);
    $b_arr = explode('.', $b); 
    $c_arr = array();

    for ($i=0; $i<count($a_arr); $i++) {    
        $c_arr[] = $a_arr[$i] + $b_arr[$i];
    }

    return implode('.', $c_arr);
}

// Testing
$a = '1.12.9.4.3.2.1';
$b = '2.3.2.4.3.2.1';

$c = add_number_strings($a, $b);

var_dump($c); // should be 3.15.11.8.6.4.2