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 ::

Das Zend Framework

Das Zend Framework 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 12.02.2011, 17:27:22
R4Zz0R R4Zz0R ist offline
Junior Member
 
Registriert seit: Sep 2009
Ort: Wetzlar/Kassel
Alter: 35
Beiträge: 201
Lambda funktion parameter übergabe funktioniert nicht

Hi leute ..

Ich hab mich damit beschäftigt (aufgrund dessen das es echt einfacher ist) wie ich normale funktionsaufrufe nicht mehr benötige.

Also mein bisheriger ansatz, funktioniert mit funktionenen die keine parameter benötigen wunderbar.
Aber jetzt fängt es bei mir an das ich natürlich auch funktionen aufrufen mächte die parameter benötigen.

Mein bisheriger code:
PHP-Code:
 function funkControler($getarr,$touse) {
  
//seite zuweisen
  
$funkt $getarr['do'];
  
$fparam $getarr['fpa'];
  if(isset(
$funkt)) {
    if(!empty(
$fparam)) {
      
$run $touse[$funkt]($fparam);
   } else {
     
$run $touse[$funkt]();
   }
  }
 return 
$run;

 } 
Ist leider nicht dafür ausgelegt auch funktionen mit parametern aufzurufen.

Jetzt blicke ich natürlich erstmal nicht mehr durch und wollte mal hören was ich da verwenden kann.

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 12.02.2011, 18:34:57
DokuLeseHemmung DokuLeseHemmung ist offline
SELFPHP Experte
 
Registriert seit: Jun 2008
Alter: 16
Beiträge: 2.269
AW: Lambada funktion parameter übergabe funktioniert nicht

Schon wieder alles vergessen?

Zitat:
call_user_func_array
Aus: http://www.selfphp.de/forum/showpost...1&postcount=25

;-) ;-) ;-) ;-) ;-) ;-) ;-)
Mit Zitat antworten
  #3  
Alt 12.02.2011, 18:38:14
R4Zz0R R4Zz0R ist offline
Junior Member
 
Registriert seit: Sep 2009
Ort: Wetzlar/Kassel
Alter: 35
Beiträge: 201
AW: Lambada funktion parameter übergabe funktioniert nicht

Zitat:
Zitat von DokuLeseHemmung Beitrag anzeigen
Schon wieder alles vergessen?


Aus: http://www.selfphp.de/forum/showpost...1&postcount=25

;-) ;-) ;-) ;-) ;-) ;-) ;-)
Öhhm.... nein!
Schön und gut aber dabei bekomme ich eine fehlermeldung!

Warning: call_user_func_array() expects parameter 2 to be array, string given on line 13
__________________
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
  #4  
Alt 12.02.2011, 19:06:45
DokuLeseHemmung DokuLeseHemmung ist offline
SELFPHP Experte
 
Registriert seit: Jun 2008
Alter: 16
Beiträge: 2.269
AW: Lambada funktion parameter übergabe funktioniert nicht

Tipp:
1. Fehlermeldung lesen
2. Das Handbuch zu call_user_func_array() befragen
Mit Zitat antworten
  #5  
Alt 12.02.2011, 19:24:04
R4Zz0R R4Zz0R ist offline
Junior Member
 
Registriert seit: Sep 2009
Ort: Wetzlar/Kassel
Alter: 35
Beiträge: 201
AW: Lambada funktion parameter übergabe funktioniert nicht

Fehlermeldung gelesen ... Handbuch befragt -> immernoch ratlos... was soll ich den machen wenn ich nur ein argument habe und net nen ganzes array voll?...

Kann ja schlecht eins "emulieren"...

Und call_user_func ist leider keine alternative da es nichts zurückgibt...

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
  #6  
Alt 12.02.2011, 19:36:55
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: Lambada funktion parameter übergabe funktioniert nicht

Vlt. den STRING mal als ARRAY übergeben?
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #7  
Alt 12.02.2011, 19:42:51
DokuLeseHemmung DokuLeseHemmung ist offline
SELFPHP Experte
 
Registriert seit: Jun 2008
Alter: 16
Beiträge: 2.269
AW: Lambada funktion parameter übergabe funktioniert nicht

Zitat:
Und call_user_func ist leider keine alternative da es nichts zurückgibt...
Falsch!

Dann lese ich dir mal das Handbuch vor.....
Quelle:
http://de3.php.net/manual/de/functio...func-array.php
http://de3.php.net/manual/de/functio...-user-func.php

Zitat:
Rückgabewerte
Returns the function result, or FALSE on error.
Zitat:
param_arr
The parameters to be passed to the function, as an indexed array.
Trim Beispiel:
PHP-Code:
// also so:
echo call_user_func_array('trim',array('--------Ein Wort!--------','-')); 
PHP-Code:
// oder so:
echo call_user_func('trim','--------Ein Wort!--------','-');

Mit Zitat antworten
  #8  
Alt 12.02.2011, 20:03:20
R4Zz0R R4Zz0R ist offline
Junior Member
 
Registriert seit: Sep 2009
Ort: Wetzlar/Kassel
Alter: 35
Beiträge: 201
AW: Lambada funktion parameter übergabe funktioniert nicht

Dan erklär mir doch bitte warum die funktion die ich versuche aufzurufen:
PHP-Code:
function userView($user) {

  global 
$con;

  
$sql "SELECT * FROM user WHERE user LIKE `$user`";
  
$qry mysql_query($sql);
  while (
$overview mysql_fetch_assoc($qry)) {
  
$userinfo=$overview;
  }
 return 
$userinfo;

Anstelle des arrays mit den informationen plötzlich NULL zurück gibt !
Aber wenn ich diese funktion mit einem herkörmlichen aufruf benutze mein array mit den informationen problemlos ausliefert!

Momentan sieht es folgendermaßen aus ich habe es schon probiert diesen einen parameter als array zu übergeben.

PHP-Code:
 function funkControler($getarr,$touse) {
  
//seite zuweisen
  
$funkt $getarr['do'];
  
$fparam = array($getarr['fpa'],'');
  if(isset(
$funkt)) {
    if(!empty(
$fparam)) {
      
$run =call_user_func_array($touse[$funkt],$fparam);
   } else {
     
$run $touse[$funkt]();
   }
  }
 return 
$run;

 } 
Doch ohne erfolg.

Und nun wüsste ich gerne mal was ich falsch mache weil ähhm... ich sehe den feher gerade nicht.
Auch mit call_user_func bekomme ich nichts zurück als NULL ... aber keine fehlermeldung.

Die übergebenen daten sind korrekt und kommen in der funktion an.

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
  #9  
Alt 12.02.2011, 20:20:45
DokuLeseHemmung DokuLeseHemmung ist offline
SELFPHP Experte
 
Registriert seit: Jun 2008
Alter: 16
Beiträge: 2.269
AW: Lambada funktion parameter übergabe funktioniert nicht

PHP-Code:
function userView($user
{
 return 
"42-$user-42";




 function 
funkControler() 
 {
  
$funkt 'userView';
  
$fparam = array('Willi');
  
$run =call_user_func_array($funkt,$fparam);
  return 
$run;
 } 
 
echo  
funkControler() ; 
Damit wäre geklärt, dass das grundsätzlich so funktioniert.
Mit Zitat antworten
  #10  
Alt 12.02.2011, 20:32:06
R4Zz0R R4Zz0R ist offline
Junior Member
 
Registriert seit: Sep 2009
Ort: Wetzlar/Kassel
Alter: 35
Beiträge: 201
AW: Lambada funktion parameter übergabe funktioniert nicht

hmm gut das bezweifel ich auch nicht.

Es geht nur darum das ich ja gerne alle möglichen variablen verwenden können würde.

Dementsprechend müsste der inhalt des array auch variabel sein (also veränderbar)

ratschläge ? ideen?...

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
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
stripslashes funktioniert bei Übergabe durch $_POST nicht carlos7262 PHP Grundlagen 2 29.05.2007 18:46:15
funktion - funktioniert nich Driel PHP Grundlagen 4 22.03.2004 20:25:38
Funktion mit komischem Parameter Patrick-Oliver PHP Grundlagen 2 05.08.2003 16:33:09
Parameter Übergabe funktioniert nicht DirkB PHP Grundlagen 1 23.04.2002 21:45:29
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 20:17:16 Uhr.


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


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