SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Fortgeschrittene CSS-Techniken

Fortgeschrittene CSS-Techniken zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Entwicklung und Softwaredesign

PHP Entwicklung und Softwaredesign Hier können strukturelle (Programmier-) Konzepte diskutiert und Projekte vorgestellt werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 16.02.2011, 15:20:29
R4Zz0R R4Zz0R ist offline
Junior Member
 
Registriert seit: Sep 2009
Ort: Wetzlar/Kassel
Alter: 28
Beiträge: 201
R4Zz0R befindet sich auf einem aufstrebenden Ast
Lambda Funktion weiterführung..(varialbe als parameter ($_POST -> $postarr)

Hi leute ...

Alsooo..
In meinem vorherigen beitrag ging es ja um lambda funktionen.
Hier möchte ich nun meine erweiterung des codes ein wenig präsentieren (ungetestet) und gleich eines meiner probleme behandeln.

Meine ungetestete erweiterung bezieht sich darauf in der varialbe fpa zu prüfen ob sich dort ein komma befindet und es notfals in ein array umzuwandeln und eine funktion auch mit mehreren parametern aufzurufen.

Werde ich gleich erst testen daher hier mal der ungetestete code:

PHP-Code:
function funkControler($getarr,$touse) {
  
$funkt $getarr['do'];
  
$fparam $getarr['fpa'];
  
$fpaarr preg_match('/,/',$fparam,$match);
    if(!empty(
$match)) {
      
$fparam explode(',',$fparam);
        if(
is_array($fparam)) {
          
$run call_user_func_array($touse[$funkt],$fparam);
        }
    } else {
       if(isset(
$funkt)) {
         if(!empty(
$fparam)) {
           
$run call_user_func($touse[$funkt],$fparam);
         } else {
           
$run $touse[$funkt]();
         }
       }
    }
 return 
$run;

Nun aber was anderes ich habe funktionen die als übergabeparameter mein selbst erstelltes und gefiltertes array ($_POST wird zu $postarr) der post varialben benötigt.

wie kann ich den nun der funktion sagen das sie diese variable als parameter benutzen soll ? ...

Ich werde gleich meine idee mal überprüfen ob das funktioniert :(wäre aber echt umständlich daher hoffe ich auf bessere ideen.)

Pseudocode:
PHP-Code:
if($postarr['fpa'] == 'post') {
  
$fparam $postarr;

Vorschläge ?

LG
R4Zz0R
__________________
Wachsen kann man entweder:

Körperlich -> Man wird größer.
^ Ist so von der Evolution gewollt.

Charakter -> Man wird Geduldiger.
^ Man wächst mit der aufgabe

Kopf -> Man wird Klüger.
^ Wenn die aufgabe probleme macht & man trotzdem deine lösung findet.
Mit Zitat antworten
  #2  
Alt 18.02.2011, 14:21:46
R4Zz0R R4Zz0R ist offline
Junior Member
 
Registriert seit: Sep 2009
Ort: Wetzlar/Kassel
Alter: 28
Beiträge: 201
R4Zz0R befindet sich auf einem aufstrebenden Ast
AW: Lambda Funktion weiterführung..(varialbe als parameter ($_POST -> $postarr)

Also ..

Bisher funktioniert es grundsätzlich.
Ich hab das ganze jetzt aber ein wenig anders gestaltet.

PHP-Code:
function funkControler($getarr,$touse,$postarr) {
  
$funkt $getarr['do'];
  
$fparam $getarr['fpa'];
  if(
$fparam == 'post') {
      
$run call_user_func_array($touse[$funkt],$postarr);

  } else {
       if(isset(
$funkt)) {
         if(!empty(
$fparam)) {
           
$run call_user_func($touse[$funkt],$fparam);
         } else {
           
$run $touse[$funkt]();
         }
       }
    }
 return 
$run;

Innheralb dieser funktion steht $postarr immernoch als assoziatives arrray zur verfügung.
Aber in der aufgerufenen funktion nicht da verwandelt sich das array plotzlich in einen string und es ist nur der erste übergebene wert verfügbar und wenn ich versuche den inhalt des arrays über den index aufzurufen ($postarr['navname']) bekomme ich nur den ersten buchstaben ... hab ich da irgentwas übersehen ?

LG
R4Zz0R
__________________
Wachsen kann man entweder:

Körperlich -> Man wird größer.
^ Ist so von der Evolution gewollt.

Charakter -> Man wird Geduldiger.
^ Man wächst mit der aufgabe

Kopf -> Man wird Klüger.
^ Wenn die aufgabe probleme macht & man trotzdem deine lösung findet.
Mit Zitat antworten
  #3  
Alt 18.02.2011, 14:33:46
R4Zz0R R4Zz0R ist offline
Junior Member
 
Registriert seit: Sep 2009
Ort: Wetzlar/Kassel
Alter: 28
Beiträge: 201
R4Zz0R befindet sich auf einem aufstrebenden Ast
AW: Lambda Funktion weiterführung..(varialbe als parameter ($_POST -> $postarr)

Möööeppp ...

Ja erledigt ... ich übergebe ja das array als einzelne werte ...

aus $postarr wird ->
$postarr[0] = wert1 für funktion
$postarr[1] = wert2 für funktion

Och mensch kann ich blöd sein !
__________________
Wachsen kann man entweder:

Körperlich -> Man wird größer.
^ Ist so von der Evolution gewollt.

Charakter -> Man wird Geduldiger.
^ Man wächst mit der aufgabe

Kopf -> Man wird Klüger.
^ Wenn die aufgabe probleme macht & man trotzdem deine lösung findet.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Lambada funktion parameter übergabe funktioniert nicht R4Zz0R PHP Entwicklung und Softwaredesign 10 12.02.2011 20:45:26
Funktion mit komischem Parameter Patrick-Oliver PHP Grundlagen 2 05.08.2003 16:33:09
Funktion als Parameter isd64 PHP für Fortgeschrittene und Experten 0 05.04.2002 18:24:56


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:38:45 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.


© 2001-2017 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt