Virtlab:Řídící server/SupportFunctions.php.inc

Z VirtlabWiki

< Virtlab:Řídící server(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
Verze z 10:16, 22. 10. 2007
Vav166 (Diskuse | příspěvky)

← Předchozí porovnání
Aktuální verze
Vav166 (Diskuse | příspěvky)

Řádka 8: Řádka 8:
; function DoubleArrayItems($array) : zdvojí prvky pole ; function DoubleArrayItems($array) : zdvojí prvky pole
; function MatrixClear(&$matice, $radek, $sloupec) : v zadané matici zruší určený sloupec a řádek ; function MatrixClear(&$matice, $radek, $sloupec) : v zadané matici zruší určený sloupec a řádek
- +; ...
-== Příklady ==+
- '''$xml''' = "<tag1>Hello World</tag1>+
- <tag1>Hello World</tag1> <tag1>Hello World</tag1>+
- <tag1>Hello World</tag1>";+
- +
- $cisto = '''ClearWhitespaceInXML($xml)''';+
- +
- '''$cisto''' == "&lt;tag1&gt;Hello World&lt;/tag1&gt;&lt;tag1&gt;Hello World&lt;/tag1&gt;&lt;tag1&gt;Hello World&lt;/tag1&gt;&lt;tag1&gt;Hello World&lt;/tag1&gt;";+
- +
- $a1 = array(1, 1, 1, 2, 3, 4, 5, 5, 6, 6, 6, 6);+
- $a2 = array(1, 1, 1, 1, 2, 4, 5, 6, 6, 6);+
- $a12 = '''array_porovnej($a1, $a2)''';+
- $a21 = '''array_porovnej($a2, $a1)''';+
- +
- '''$a1'''+
- (+
- [0] => 1+
- [1] => 1+
- [2] => 1+
- [3] => 2+
- [4] => 3+
- [5] => 4+
- [6] => 5+
- [7] => 5+
- [8] => 6+
- [9] => 6+
- [10] => 6+
- [11] => 6+
- )+
- +
- '''$a2'''+
- (+
- [0] => 1+
- [1] => 1+
- [2] => 1+
- [3] => 1+
- [4] => 2+
- [5] => 4+
- [6] => 5+
- [7] => 6+
- [8] => 6+
- [9] => 6+
- )+
- +
- '''$a12'''+
- (+
- [4] => 3+
- [7] => 5+
- [11] => 6+
- )+
- +
- '''$a21'''+
- (+
- [3] => 1+
- )+
- +
- $a = array(1, "index1" => 2, 3, "index2" => 4, "index3" => 5, +
- 6 => array(3, "index4" => 4, "index5" => 5));+
- $a2 = '''DoubleArrayItems($a)''';+
- +
- '''$a'''+
- (+
- [0] => 1+
- [index1] => 2+
- [1] => 3+
- [index2] => 4+
- [index3] => 5+
- [6] => Array+
- (+
- [0] => 3+
- [index4] => 4+
- [index5] => 5+
- )+
- )+
- +
- '''$a2'''+
- (+
- [0] => 1+
- [1] => 1+
- [2] => 2+
- [3] => 2+
- [4] => 3+
- [5] => 3+
- [6] => 4+
- [7] => 4+
- [8] => 5+
- [9] => 5+
- [10] => Array+
- (+
- [0] => 3+
- [index4] => 4+
- [index5] => 5+
- )+
- [11] => Array+
- (+
- [0] => 3+
- [index4] => 4+
- [index5] => 5+
- )+
- )+
- +
- '''$a'''+
- (+
- [radek1] => Array+
- (+
- [sloupec1] => 0+
- [sloupec2] => 1+
- [sloupec3] => 2+
- [sloupec4] => 3+
- )+
- [radek2] => Array+
- (+
- [sloupec1] => 0+
- [sloupec3] => 2+
- [sloupec4] => 3+
- )+
- [radek3] => Array+
- (+
- [sloupec3] => 2+
- [sloupec4] => 3+
- )+
- )+
- +
- '''MatrixClear(&$a, "radek2", "sloupec1")''';+
- +
- '''$a'''+
- (+
- [radek1] => Array+
- (+
- [sloupec2] => 1+
- [sloupec3] => 2+
- [sloupec4] => 3+
- )+
- [radek3] => Array+
- (+
- [sloupec3] => 2+
- [sloupec4] => 3+
- )+
- )+
== Zdrojový kód == == Zdrojový kód ==
-<pre>+Aktuální zdrojový kód se nachází [https://vl-test.cs.vsb.cz/websvn/filedetails.php?repname=virtlab&path=%2FDISTR%2Fweb%2Fclass%2FvirtlabSupportFunctions.php.inc&rev=0&sc=0 zde].
-<?php+
- +
-function ClearWhitespaceInXML($data) {+
- $pattern = "/>\s+</";+
- $replacement = "><";+
- return preg_replace($pattern, $replacement, $data);+
-}//function+
- +
-function Unique($array) {+
- if(is_array($array))+
- return array_keys(array_flip($array));+
- return NULL;+
-}//function+
- +
-function array_delete(&$array, $value) {+
- if(is_array($array)) {+
- if(in_array($value, $array)) {+
- $array = array_diff($array, array($value));+
- return 1;+
- }+
- return 0;+
- }//if+
- return NULL;+
-}+
- +
-function array_porovnej($array1, $array2) {+
- $result = array();+
- foreach($array1 as $idx1 => $value1) {+
- $exists = 0;+
- foreach($array2 as $idx2 => $value2) {+
- if($value1 == $value2) {+
- unset($array2[$idx2]);+
- $exists = 1;+
- break;+
- }+
- //else $result[$idx1] = $value1;+
- }//foreach+
- if(!$exists) $result[$idx1] = $value1;+
- }//foreach+
- return $result;+
-}//function+
- +
-function DoubleArrayItems($array) {+
- $temp = array();+
- if(is_array($array)) {+
- foreach($array as $hodnota) {+
- array_push($temp, $hodnota);+
- array_push($temp, $hodnota);+
- }//foreach+
- return $temp;+
- }//if+
- return NULL;+
-}//function+
- +
-function MatrixClear(&$matice, $radek, $sloupec) {+
- unset($matice[$radek]);+
- foreach($matice as $radecek => $radky)+
- foreach($radky as $sloupecek => $hodonota) {+
- if($sloupecek == $sloupec) +
- unset($matice[$radecek][$sloupecek]);+
- }+
-}//function+
-?>+
- +
-</pre>+
 +[[Kategorie:Komponenty virtlabu]]
 +[[Kategorie:Server]]
 +[[Kategorie:Řídící server]]
[[Kategorie:PHP]] [[Kategorie:PHP]]

Aktuální verze

Pomocné funkce.

Popis funkcí

function ClearWhitespaceInXML($data) 
ze vstupních dat (XML dat), odstraní bílé znaky mezi značkami.
function Unique($array) 
z pole udělá množinu (odstraní duplicitní hodnoty)
function array_delete(&$array, $value) 
z pole $array odstraní hodnotu $value.
function array_porovnej($array1, $array2) 
vypočíta rozdíl multimnožin $array1 - $array2
function DoubleArrayItems($array) 
zdvojí prvky pole
function MatrixClear(&$matice, $radek, $sloupec) 
v zadané matici zruší určený sloupec a řádek
...

Zdrojový kód

Aktuální zdrojový kód se nachází zde.

Osobní nástroje