26

0いくつかの変数の先頭に配置されたすべてを削除したい。

いくつかのオプション:

  1. の場合$var = 0002、最初にストリップする必要があります000( $var = 2)
  2. var = 0203410最初に削除する必要がある場合0( $var = 203410)
  3. if var = 20000- 何もしない ( $var = 20000)

解決策は何ですか?

4

7 に答える 7

78

整数にキャストする

$var = (int)$var;
于 2010-08-25T07:35:50.893 に答える
31

たぶんltrim

$var = ltrim($var, '0');
于 2010-08-25T07:35:46.293 に答える
12
$var = ltrim($var, '0');

これは文字列に対してのみ機能し、0 で始まる数値は 8 進数として解釈され、複数のゼロは無視されます。

于 2010-08-25T07:36:02.373 に答える
5
$var = strval(intval($var));

または、文字列のままで構わない場合は、int に変換してそのままにしておきます。

于 2010-08-25T07:35:54.747 に答える
5

変数内で + を使用するだけです:

echo +$var;
于 2014-06-15T18:05:44.537 に答える
2

1を掛けます

$var = "0000000000010";
print $var * 1;  

//prints 10
于 2018-07-20T08:14:01.773 に答える
0

鋳造タイプに注意してください。

var_dump([
    '0014010011071152',
    '0014010011071152'*1,
    (int)'0014010011071152',
    intval('0014010011071152')
]);

版画:

array(4) {
    [0]=> string(16) "0014010011071152"
    [1]=> float(14010011071152)
    [2]=> int(2147483647)
    [3]=> int(2147483647)
}
于 2018-05-04T13:41:54.993 に答える