Мне действительно было интересно, что-то подобное строго из любопытства (я знаю, что это не является узким местом моего приложения).Мой вопрос заключается в том, проще ли установить переменную на отрицательное значение или умножить ее на -1.мне интересно, если это отличается от процессора, ОС и т. д., но я запустил следующий тест:
$number = rand(100000,999999999);
$iterations = 10000000;
$start = microtime(true);
for($i = 0; $i <= $iterations; $i++)
$number = -$number;
echo "time: ".(microtime(true)-$start)."\n";
//
$start = microtime(true);
for($i = 0; $i <= $iterations; $i++)
$number = $number * -1;
echo "time: ".(microtime(true)-$start)."\n";
//
$start = microtime(true);
for($i = 0; $i <= $iterations; $i++)
$number = -$number;
echo "time: ".(microtime(true)-$start)."\n";
//
$start = microtime(true);
for($i = 0; $i <= $iterations; $i++)
$number = $number * -1;
echo "time: ".(microtime(true)-$start)."\n";
, который произвел:1 постоянно быстрее (на незначительную сумму)