for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Graze\CiffRenderer\Parser;
use Graze\CiffRenderer\Parser\FieldType;
use Graze\CiffRenderer\Exception\UnsupportedFieldTypeException;
use \SimpleXMLElement;
class FieldSorter
{
/**
* @var int
*/
protected $fieldTypeToOrder = [
FieldType::FIELD_STATIC_GRAPHIC => 1,
FieldType::FIELD_FIXED_TEXT => 2,
FieldType::FIELD_COMPLEX_TEXT => 3,
FieldType::FIELD_BARCODE => 4,
FieldType::FIELD_DATE => 5,
FieldType::FIELD_OFFSET_DATE => 6,
FieldType::FIELD_MERGE_FIELD => 7,
FieldType::FIELD_GRAPHIC_PRIMITIVE => 8,
];
* @param SimpleXMLElement[] $fields
public function sort(array &$fields)
usort($fields, function ($field1, $field2) {
return
// @codingStandardsIgnoreLine
$this->fieldTypeToOrder[(string) $field1->FldType] - $this->fieldTypeToOrder[(string) $field2->FldType];
});
}