diff --git a/csv_check.php b/csv_check.php index ac767bf..273c728 100644 --- a/csv_check.php +++ b/csv_check.php @@ -81,20 +81,12 @@ if ($error != 0) echo '
Not allowed tags found !
2: Not allowed multiple use of tags (column names)?'; $compare = array_unique($zeile); -function identical_values($arrayA, $arrayB) { - sort($arrayA); - sort($arrayB); - return $arrayA == $arrayB; - -} - $result = identical_values($zeile, $compare); if ($result == false) { echo '
There are dublicate column names !'; $error = $error + 1; } -else -{ +else { echo '
No dublicate column names !'; } @@ -102,12 +94,10 @@ else //// Get values into memory for following checks $fp = fopen ( $csv_datei, 'r' ); $y = 0; -while ( $zeile = fgetcsv ( $fp, 100000, ';' ) ) -{ +while ($zeile = fgetcsv($fp, 100000, ';')) { + $y++; - //echo '
';print_r($zeile); - for ($x = 0; $x < count ( $zeile ); $x++) - { + for ($x = 0; $x < count ( $zeile ); $x++) { $inhalt[$y][$x] = str_replace("'", "\'", $zeile[$x]); } } @@ -118,25 +108,21 @@ echo '

3: Mandatory tags available and always filled in?'; unset($inv_array); $inv_error = 0; -function get_duplicates($array) -{ +function get_duplicates($array) { return array_unique( array_diff_assoc( $array, array_unique( $array ) ) ); } $mandatory = array('inventory_number','object_type','object_title','object_description'); -for ($i = 0; $i < count ($mandatory); $i++) -{ +for ($i = 0; $i < count($mandatory); $i++) { if (!in_array($mandatory[$i], $erstezeile)) { echo '
Mandatory: Column ' . $mandatory[$i] . ' missing'; $error = $error + 1; $inv_error = $inv_error + 1; } - else - { + else { $spaltenr = array_search($mandatory[$i], $erstezeile); - for ($j = 0; $j < $y; $j++) - { + for ($j = 0; $j < $y; $j++) { if ($inhalt[$j + 1][$spaltenr] == '') { echo '
Missing value for ' . $mandatory[$i] . ' in row ' . ($j + 1) . ''; $error = $error + 1; diff --git a/functions/functions.php b/functions/functions.php index ef83a83..4f76f69 100644 --- a/functions/functions.php +++ b/functions/functions.php @@ -1,6 +1,10 @@ ' . $xmlDoc->saveXML($xmlDoc->documentElement); @@ -187,9 +191,8 @@ function createTextDomElement(DOMDocument $xmlDoc, string $tag, string $content) $element = $xmlDoc->createElement($tag); } catch (DOMException $e) { - print_r($e); - print_r($tag); - exit; + echo "Error at " . __FILE__ . ", line #" . __LINE__; + exit; } $element->appendChild($xmlDoc->createTextNode($content)); @@ -213,7 +216,14 @@ function getBlankRecordChannel():array { } -function rrmdir($dir) { +/** + * Function for removing a directory with all its contents. + * + * @param string $dir File path of the directory to remove. + * + * @return void + */ +function rrmdir(string $dir) { if (is_dir($dir)) { $objects = scandir($dir); foreach ($objects as $object) { @@ -226,3 +236,18 @@ function rrmdir($dir) { } } + +/** + * Function for checking if two arrays have identical values / contents. + * + * @param array $arrayA First array to compare. + * @param array $arrayB Second array to compare. + * + * @return boolean + */ +function identical_values(array $arrayA, array $arrayB):bool { + sort($arrayA); + sort($arrayB); + return $arrayA == $arrayB; + +}