/**
* Beschreibung des Parameterarrays $ParamList
*
* Der erste Dimensionsindex des Arrays ist der Parametername der Funktion, die getestet werden muss. Jedes Element der zweiten Dimension ist der mögliche Wert von Parameter, der getestet werden muss. Der Elementwert kann ein Array sein.
*/
$ParamList = array("Param1" => array(3,4,3,2,1) ,
„Param2“ => array(3,2,5),
„Param3“ => array(0,0.5,1,1.5));
// Testfunktion
sysTestFunction("Test", $ParamList);
// Zu testende Funktion
function Test($Param1, $Param2, $Param3)
{
return $Param1 . "|" . $Param3;
/**
function sysTestFunction($FunctionName, $ParamList )
{
if(empty($FunctionName))
{
echo „Der Funktionsname darf nicht leer sein“;
return false;
}
if ( !is_array(current($ParamList)))
{
echo "Der Parameter ist kein zweidimensionales Array";
echo "Start test function" ;br />";
{
echo "Testabschnitt starten" . $Key . "Gruppenparameter:
";
foreach($TestParamInfo as $ParamKey => $Param)
{
${"Param" . $ParamKey} = $Param;
$TempParamList[] = "$Param" $ ParamKey;
if(is_array($Param))
{
echo "parameter" . $ParamKey ", Typ ist Array: ";
;";
print_r ($Param) ;> If ($ param) }
echo "& lt; br /& gt;
$Params = join(", ", $TempParamList);
unset($TempParamList);
eval("$TestReturnResult = " . $FunctionName . "(" . $Params . ");");
if(is_array($TestReturnResult))
{
echo "Funktion gibt Array zurück : & lt; pre & gt; "; oder eine Zeichenfolge: " . $TestReturnResult;
}
**
* Funktion zur Berechnung der Kombination
*
* @param array $CombinList 2-dimensionales Array, das angeordnet und kombiniert werden soll
* @return array Das kombinierte Array
*/
function sysCombineArray($CombinList)
{
if(!is_array(current($CombinList)) )
{
echo „Der Parameter ist kein zweidimensionales Array“ ;
return false;
}
/* Berechnen Sie den Wert von C(a,1) * C(b, 1) * ... * C(n, 1)*/
$CombineCount = 1;
foreach($CombinList as $Key => $Value)
{
$CombineCount *= count($Value);
$ RepeatTime = $CombineCount;
foreach($CombinList as $ClassNo => $ParamList)
{
/ / Die maximale Anzahl vertikaler Wiederholungen von Elementen in $ParamList nach der Aufteilung in Kombinationen
$RepeatTime = $RepeatTime / count($ParamList); Position; / $RepeatTime;
for($J = 1; $J <= $SpaceCount; $J ++)
{
{
$ Result [$ TempstartPosition +$ i] [$ classno] = $ Param;
}
;