从变量中提取减号

时间:2012-12-15 18:34:44

标签: php

我有一个奇怪的情况,我需要将变量分成两部分[sign]和[number]

所以我可以有以下整数(这不是一个序列,我一次只能有一个整数):

-15,...,-1,0,1,...,15

当有减号时我需要将它分成[ - ]部分和[整数]部分,当没有符号时我需要[+]和[整数]

我该怎么做?

我正在考虑使用爆炸爆炸(“ - ”但是如果没有减号则会出错...任何简单的方法来实现我想要的而不是写多个函数?

2 个答案:

答案 0 :(得分:1)

$ints = '-1,2,-3,4,-5,6';
$signed_ints = explode(',', $ints);
foreach ($signed_ints as &$int) {
  if (intval($int) >= 0) {
    $int = '+' . $int;
  }
}

答案 1 :(得分:1)

对于单个integer,您可以执行以下操作:

$singlevalue = -15;

$singlesplit = array('value' => abs($singlevalue));
if($singlevalue < 0)
    $singlesplit['sign'] = '-';
else
    $singlesplit['sign'] = '+';

print_r($singlesplit);

给出了输出:

Array
(
    [value] => 15
    [sign] => -
)

abs 如果您想删除值的符号,这里很重要。

此外,如果您以字符串形式收到您的值,只需使用intval

即可
$singlevalue = intval($stringValue);