Değişikliklerin yüzdesi alma

1 Cevap php

Nasıl oldu değişikliklerin yüzdesini alabilirsiniz?

Gibi

 1. date    1343360810     objectId 1628
    field 10 value 3
 1. date    1242360811     objectId 1628
    field 10 value 5
 1. date    1243364812     objectId 1628
    field 10 value 5
 1. date    1240360814     objectId 1628
    field 10 value 5

This would mean the value has ben changed 1 time in 4 objects. This would result a percentage of 25% .

Benim sorum ben PHP bunu nasıl olduğunu.

Bunun bir gibi nesneleri var.

  [69]=>
  object(stdClass)#92 (6) {
    ["id"]=>
    string(7) "1824709"
    ["objectId"]=>
    string(4) "1628"
    ["type"]=>
    string(1) "0"
    ["field"]=>
    string(2) "10"
    ["value"]=>
    string(1) "3"
    ["date"]=>
    string(10) "1243360814"
  }

[70]=>
  object(stdClass)#93 (6) {
    ["id"]=>
    string(7) "1826225"
    ["objectId"]=>
    string(4) "1628"
    ["type"]=>
    string(1) "0"
    ["field"]=>
    string(2) "10"
    ["value"]=>
    string(1) "0"
    ["date"]=>
    string(10) "1243360814"
  }

1 Cevap

Nesnelerin dizi yineleme ve değeri değiştiğinde izlemek. Böyle bir şey yapmanız gerekir:

$oldvalue = false; // This is to exclude the first value from registering as a change
$changes = 0;
foreach($object_array as $obj) {
  if($oldvalue !== false && $obj->value != $oldvalue)
    $changes++;
  $oldvalue = $obj->value;
}
$change_percentage = $changes / count($object_array) * 100;