====== PHP-Funktionen ====== Dieses Kapitel stellt die Funktionen vor, die in //PHP-Code// Elementen zur Verwendung stehen. Die [[php|Einführung in PHP-Code]] erklärt, wie man PHP-Funktionen im Fragebogen einsetzen kann. Ganz unten auf dieser Seite wird erläutert, wie die Dokumentation der einzelnen PHP-Funktionen zu lesen ist: [[#funktionen_im_detail|Funktionen im Detail]] ===== Basisfunktionen für Filterfragen, Fragen und Texte ===== Siehe auch [[filters|Filterfragen und Filter]]. * ''[[:de:create:functions:value|value()]]'' -- Eine Antwort des Befragten verwenden, z.B. für Filter * ''[[:de:create:functions:gotopage|goToPage()]]'' -- Zu einer anderen Seite springen * ''[[:de:create:functions:gotopage#interview_beenden|goToPage('end')]]'' -- Interview beenden * ''[[:de:create:functions:repeatpage|repeatPage()]]'' -- Die letzte Seite erneut anzeigen * ''[[:de:create:functions:redirect|redirect()]]'' -- Den Befragten zu einer anderen Website weiterleiten * ''[[:de:create:functions:question|question()]]'' -- Eine Frage im Fragebogen anzeigen * ''[[:de:create:functions:text|text()]]'' -- Text oder HTML-Code innerhalb des Fragebogens anzeigen * ''[[:de:create:functions:show|show()]]'' -- Eine Frage, kombinierte Frage oder Text anzeigen * ''[[:de:create:functions:debug|debug()]]'' -- Inhalt einer Daten- oder PHP-Variable anzeigen ===== Anzeige einer Fragebogen-Seite anpassen ===== * ''[[:de:create:functions:option|option()]]'' -- Darstellung der Seite anpassen (u.a. Fortschrittsanzeige, Weiter-Button) * ''[[:de:create:functions:preset|preset()]]'' -- Antwort für eine Frage vorgeben * ''[[:de:create:functions:markfail|markFail()]]'' -- Für ein Eingabefeld die Markierung "Antwort fehlt" setzen * ''[[:de:create:functions:html]]'' -- Direkt HTML-Code innerhalb des Fragebogens ausgeben * ''[[:de:create:functions:textlink]]'' -- Link auf einen Fragebogen-Text berechnen * ''[[:de:create:functions:buttontopage]]'' -- Knopf, um innerhalb des Fragebogens zu springen * ''[[:de:create:functions:buttoncode]]'' -- HTML-Code für den Knopf "Weiter" oder "Zurück" erzeugen * ''[[:de:create:functions:buttonhide]]'' -- Weiter- und Zurück-Knopf deaktivieren * ''[[:de:create:functions:library]]'' -- JavaScript- oder PHP-Bibliothek einbinden * ''[[:de:create:functions:pagecss]]'' -- CSS-Anweisungen für eine einzelne Fragebogen-Seite * ''[[:de:create:functions:pagehead]]'' -- Meta-Informationen zur Fragebogen-Seite hinterlegen ===== Funktionen zur Randomisierung ===== SoSci Survey bietet verschiedene Funktionen für spezielle Zufallsauswahlen und zufällige Gruppeneinteilungen. Für eine einfache experimentelle Variation empfehlen wir einen [[:de:create:questions:random]] ([[randomization|Randomisierung]]). * ''[[:de:create:functions:put|put()]]'' -- Wert im Datensatz abspeichern * ''[[:de:create:functions:random|random()]]'' -- Zufallszahl würfeln * ''[[:de:create:functions:random_p|random_p()]]'' -- Zufallszahl unter Vorgabe von Wahrscheinlichkeiten * ''[[:de:create:functions:random_items|random_items()]]'' -- Zufällig Items aus einer Liste auswählen * ''[[:de:create:functions:randomuse]]'' -- Zettel eines Zufallsgenerators gezielt ablegen * ''[[:de:create:functions:urndraw|urnDraw()]]'' -- Zieht einen Zettel aus einer Urne (Zufallsauswahl ohne Zurücklegen) * ''[[:de:create:functions:urnputaway|urnPutAway()]]'' -- Entfernt einen mit urnDraw() gezogenen Zettel aus der Urne * ''[[:de:create:functions:urnstatus|urnStatus()]]'' -- Aktuellen Status einer Urne auslesen ===== Fortgeschrittene Ablaufsteuerung ===== * ''[[:de:create:functions:replace]]'' -- Einen Platzhalter vorbereiten * ''[[:de:create:functions:registervariable]]'' -- PHP-Variable für die Verwendung auf weiteren Seiten registrieren * ''[[:de:create:functions:id]]'' -- Frage- oder Item-Kennung aus Einzelangaben erstellen * ''[[:de:create:functions:getitems]]'' -- Listet die Items einer Frage nach bestimmten Kriterien auf * ''[[:de:create:functions:getquestions]]'' -- Listet die Fragen einer Rubrik auf * ''[[:de:create:functions:getitemtext]]'' -- Beschriftung eines Items oder einer Antwortoption abfragen * ''[[:de:create:functions:getvaluetext]]'' -- Beschriftung einer Antwortoption abfragen * ''[[:de:create:functions:gettextelement]]'' -- Inhalt eines Textbausteins auslesen * ''[[:de:create:functions:getvariables]]'' -- Liefert eine Liste von Variablen as dem Datensatz * ''[[:de:create:functions:getroute]]'' -- Ermitteln, ob der Weiter- oder Zurück-Knopf verwendet wurde * ''[[:de:create:functions:casenumber]]'' -- Nummer der aktuellen Interviews * ''[[:de:create:functions:caseserial]]'' -- Teilnahmecode oder Personenkennung der Teilnehmer:in * ''[[:de:create:functions:casetime]]'' -- Verweildauer auf einer oder mehreren Seiten * ''[[:de:create:functions:casetoken]]'' -- Interne Kennung des Interviews * ''[[:de:create:functions:casedata]]'' -- Alle im Interview erhobenen Daten ermitteln * ''[[:de:create:functions:reference|reference()]]'' -- Evtl. im Link zum Fragebogen übergebene Referenz abfragen * ''[[:de:create:functions:serialcheck|serialCheck()]]'' -- Status eines Teilnahmecodes abfragen * ''[[:de:create:functions:readget|readGET()]]'' -- Eine übertragene Variable aus dem Link auslesen * ''[[:de:create:functions:sendjson|sendJSON()]]'' -- HTTP-Anfrage im JSON-Format senden (REST API) * ''[[:de:create:functions:sendjson|sendPOST()]]'' -- HTTP-Anfrage im POST-Format senden (REST API) * ''[[:de:create:functions:sendjson|sendXML()]]'' -- HTTP-Anfrage im XML-Format senden (REST API) * ''[[:de:create:functions:getanswermissing|getAnswerMissing()]]'' - Information ob die Seite wegen einer Pflichtfrage wiederholt wird * ''[[:de:create:functions:listfails|listFails()]]'' -- Liste der nicht ausgefüllten Pflichtfragen * ''[[:de:create:functions:setnextpage|setNextPage()]]'' -- Seite nach dem Weiter-Klick festlegen * ''[[:de:create:functions:setpageorder|setPageOrder()]]'' -- Abfolge der Seiten im Fragebogen festlegen * ''[[:de:create:functions:looppage|loopPage()]]'' -- Eine Seite mehrfach in einer Schleife anzeigen * ''[[:de:create:functions:looptopage|loopToPage()]]'' -- Mehrere Seiten mehrfach in einer Schleife anzeigen * ''[[:de:create:functions:pagestop|pageStop()]]'' -- Keine weiteren Inhalte auf der Seite anzeigen * ''[[:de:create:functions:getlanguage|getLanguage()]]'' -- Aktuelle Sprachversion ermitteln * ''[[:de:create:functions:setlanguage|setLanguage()]]'' -- Sprachversion ändern * ''[[:de:create:functions:buttonDataCode|buttonDataCode()]]'' -- Knopf auf der Seite einfügen und mit Daten verknüpfen * ''[[:de:create:functions:buttonDataCode|buttonDataGet()]]'' -- Die über einen mittels ''buttonDataCode()'' erstellen Knopf übermittelten Daten abrufen ===== Koordination mehrerer Fragebögen ====== * ''[[:de:create:functions:gotoquestionnaire]]'' -- Von einem Fragebogen zu einem anderen springen (einmalig) * ''[[:de:create:functions:gotoparent]]'' -- Zum ursprünglichen Fragebogen zurückkehren * ''[[:de:create:functions:multileveldown]]'' -- Einen Teilfragebogen innerhalb des Hauptfragebogens starten (ggf. auch mehrmals) * ''[[:de:create:functions:multileveldata]]'' -- Daten ermitteln, die in ''multiLevelDown()'' angegeben wurden * ''[[:de:create:functions:multilevelreturn]]'' -- Rückkehr vom Teilfragebogen zum Hauptfragebogen * ''[[:de:create:functions:multilevelresponse]]'' -- Daten ermitteln, die in ''multiLevelReturn()'' angegeben wurden * ''[[:de:create:functions:multilevelput]]'' -- Einen Wert direkt im übergeordneten Datensatz abspeichern * ''[[:de:create:functions:multilevelurl]]'' -- Eine URL für einen Teilfragebogen erzeugen zum späteren Wechsel in den neuen Fall * ''[[:de:create:functions:multilevelprepare]]'' -- Einen untergeordneten Fall erstellen und mit Werten vorbelegen, zur Verwendung mit einer [[:de:create:questions:multilevel]] ===== Datenbank für Inhalte ===== * ''[[:de:create:functions:dbget|dbGet()]]'' -- Daten aus der Datenbank für Inhalte abrufen (indiziertes Array) * ''[[:de:create:functions:dbkeys|dbKeys()]]'' -- Schlüssel aus der Datenbank für Inhalte auflisten * ''[[:de:create:functions:dbload|dbLoad()]]'' -- Alle Einträge mit einem definierten Präfix aus der Datenbank für Inhalte abrufen * ''[[:de:create:functions:dbretrieve|dbRetrieve()]]'' -- Daten aus der Datenbank für Inhalte abrufen (assoziatives, verschachteltes Array) * ''[[:de:create:functions:dbset|dbSet()]]'' -- Daten in der Datenbank für Inhalte abspeichern (indiziertes Array) * ''[[:de:create:functions:dbstore|dbStore()]]'' -- Daten in der Datenbank für Inhalte abspeichern (assoziatives, verschachteltes Array) * ''[[:de:create:functions:dbtouch|dbTouch()]]'' -- Zeitstempel für einen Eintrag in der Datenbank aktualisieren ===== Datensatz-Steuerung ===== * ''[[:de:create:functions:dropvalue]]'' -- Eine einzelne Variable aus dem aktuellen Interview löschen * ''[[:de:create:functions:dropcase]]'' -- Das aktuelle Interview zum Löschen vormerken * ''[[:de:create:functions:drophistory]]'' -- Die Seiten-Historie des aktuellen Interviews löschen ===== Auswertung über alle Datensätze ===== * ''[[:de:create:functions:statistic|statistic()]]'' -- Einfache statistische Auswertung über alle erhobenen Daten * ''[[:de:create:functions:diagram|diagram()]]'' -- Einfaches Diagramm (z.B. Häufigkeiten) über alle erhobenen Daten ===== Auswertung und Angaben im laufenden Interview ===== * ''[[:de:create:functions:answers]]'' -- Frage mit Antworten des Befragten anzeigen * ''[[:de:create:functions:answersoption]]'' -- Darstellung der Antworten in ''answers()'' oder ''answersPrint()'' anpassen * ''[[:de:create:functions:answersprint]]'' -- Alle Fragen eines Fragebogen-Abschnitts inkl. Antworten des Befragten anzeigen * ''[[:de:create:functions:info]]'' -- Metainformationen zum aktuellen Interview oder zur Darstellung * ''[[:de:create:functions:valuesum]]'' -- Summe über eine Skala oder mehrere Variablen berechnen * ''[[:de:create:functions:valuemean]]'' -- Mittelwert über Skala oder Variablen berechnen * ''[[:de:create:functions:valuesd]]'' -- Standardabweichung über Skala oder Variablen berechnen * ''[[:de:create:functions:valuevar]]'' -- Varianz über Skala oder Variablen berechnen * ''[[:de:create:functions:valuelist]]'' -- Mehreren Item-Antworten einer Frage als Array abrufen * ''[[:de:create:functions:convertdatetime]]'' -- Zeitangaben und Zeitstempel ineinander umwandeln * ''[[:de:create:functions:calc]]'' -- Einfache Berechnungen ===== Grafische Darstellung von Daten ===== * ''[[:de:create:functions:diagram2|diagram2()]]'' -- Diagramm mit vorgegeben Daten erstellen * ''[[:de:create:functions:getqrcodeimage|getQRCodeImage()]]'' -- QR-Code im Fragebogen einbinden * ''[[:de:create:functions:imagepng_embed|imagepng_embed()]]'' -- PNG-Grafik ohne Umweg über eine Datei einbinden ===== Teilnehmer-Management ===== * ''[[:de:create:functions:mailresume]]'' -- Zeitverzögerte Fortsetzung des Interviews * ''[[:de:create:functions:mailschedule]]'' -- Den zeitgesteuerten Versand einer Serienmail an einen einzelnen Teilnehmer vorbereiten * ''[[:de:create:functions:mailrevoke]]'' -- Fortsetzungsmail(s) oder Serienmail stornieren * ''[[:de:create:functions:mailsend]]'' -- E-Mail an eine Adresse versenden, die nicht in der Adressliste steht * ''[[:de:create:functions:paneldata]]'' -- Informationen zum Adresseintrag abrufen * ''[[:de:create:functions:accesscount]]'' -- Eingabeversuche für Teilnahmecodes beschränken ===== PHP-eigene Funktionen ===== Weiterhin stellt PHP selbst zahlreiche Funktionen bereit, von denen einige im Fragebogen sehr hilfreich sein können. Diese Funktionen sind im [[http://php.net/manual/de/index.php|PHP Manual]] dokumentiert. * Generell nützliche Funktionen * [[http://php.net/manual/de/function.implode.php|implode]] - Array-Elemente zu einem String zusammenfügen * [[http://php.net/manual/de/function.explode.php|explode]] - Einen String in ein Array zerlegen * [[http://php.net/manual/de/function.preg-split.php|preg_split]] - String mittels regulärem Ausdruck in Array zerlegen * Mathematische Funktionen * [[http://php.net/manual/de/function.round.php|round]] - Kommazahl runden * [[http://php.net/manual/de/function.ceil.php|ceil]] - Zahl aufrunden * [[http://php.net/manual/de/function.floor.php|floor]] - Zahl abrunden * [[http://php.net/manual/de/function.abs.php|abs]] - Betrag einer Zahl ermitteln * Array-Funktionen * [[http://php.net/manual/de/function.array-diff.php|array_diff]] - Array-Elemente subtrahieren * [[http://php.net/manual/de/function.array-fill.php|array_fill]] - Array mit (gleichen) Werten füllen * [[http://php.net/manual/de/function.array-flip.php|array_flip]] - In einem Array Schlüssel und Werte vertauschen * [[http://php.net/manual/de/function.array-intersect.php|array_intersect]] - Schnittmenge zwischen Arrays * [[http://php.net/manual/de/function.array-keys.php|array_keys]] - Schlüssel eines Arrays ermitteln * [[http://php.net/manual/de/function.array-key-exists.php|array_key_exists]] - Prüfen, ob in einem Array ein Schlüssel existiert * [[http://php.net/manual/de/function.array-merge.php|array_merge]] - Arrays zusammenfügen * [[http://php.net/manual/de/function.array-pop.php|array_pop]] - Letztes Element eines Arrays entfernen und ausgeben * [[http://php.net/manual/de/function.array-push.php|array_push]] - Element(e) am Ende eines Arrays einfügen * [[http://php.net/manual/de/function.array-rand.php|array_rand]] - Ein oder mehrere Einträge eines Arrays zufällig auswählen * [[http://php.net/manual/de/function.array-reverse.php|array_reverse]] - Array in umgekehter Reihenfolge liefern * [[http://php.net/manual/de/function.array-search.php|array_search]] - Array nach einem Wert durchsuchen * [[http://php.net/manual/de/function.array-shift.php|array_shift]] - Element vom Anfang eines Arrays abschneiden und ausgeben * [[http://www.php.net/manual/de/function.array-slice.php| array_slice]] - Einen Ausschnitt eines Arrays in ein neues Array schreiben * [[http://php.net/manual/de/function.array-sum.php|array_sum]] - Elemente in einem Array aufsummieren * [[http://php.net/manual/de/function.array-unique.php|array_unique]] - Doppelte Elemente aus einem Array entfernen * [[http://php.net/manual/de/function.array-unshift.php| array_unshift]] - Wert(e) am Anfang des Arrays einfügen * [[http://php.net/manual/de/function.array-values.php|array_values]] - Assoziatives in indiziertes Array umwandeln * [[http://php.net/manual/de/function.arsort.php|arsort]] - Array absteigend sortieren und Schlüssel beibehalten * [[http://php.net/manual/de/function.asort.php|asort]] - Array aufsteigend sortieren und Schlüssel beibehalten * [[http://php.net/manual/de/function.count.php|count]] - Anzahl der Elemente in einem Array ausgeben * [[http://php.net/manual/de/function.in-array.php|in_array]] - Prüfen, ob ein Wert in einem Array vorkommt * [[http://php.net/manual/de/function.is-array.php|is_array]] - Prüfen, ob eine Variable ein Array ist * [[http://php.net/manual/de/function.krsort.php|krsort]] - Array absteigend nach Schlüssel sortieren * [[http://php.net/manual/de/function.ksort.php|ksort]] - Array aufsteigend nach Schlüssel sortieren * [[http://php.net/manual/de/function.list.php|list]] - Array auf mehrere Variablen verteilen * [[http://php.net/manual/de/function.rsort.php|rsort]] - Array absteigend sortieren * [[http://php.net/manual/de/function.shuffle.php|shuffle]] - Array zufällig mischen * [[http://php.net/manual/de/function.sort.php|sort]] - Array aufsteigend sortieren * Datum und Zeit * [[http://php.net/manual/de/function.date.php|date]] - Zeitstempel als Datumsangabe formatieren * [[http://php.net/manual/de/function.mktime.php|mktime]] - Zeitangabe in einen Zeitstempel umrechnen * [[http://php.net/manual/de/function.microtime.php|microtime]] - Zeitstempel mit Mikrosekunden ausgeben * [[http://php.net/manual/de/function.time.php|time]] - Zeitstempel in Sekunden ausgeben * String-Bearbeitung * [[http://php.net/manual/de/function.htmlentities.php|htmlentities]] - Alle Zeichen, die eine HTML-Entitäs besitzen in selbige umwandeln * [[http://php.net/manual/de/function.htmlspecialchars.php|htmlspecialchars]] - HTML-Syntaxt-Zeichen (Anführungszeichen, spitze Klammern) in HTML-Entitäten umwandeln * [[http://php.net/manual/de/function.ltrim.php|ltrim]] - Leerraum an Anfang eines Strings entfernen * [[http://php.net/manual/de/function.number-format.php|number_format]] - Eine Zahl mit Nachkommastellen und/oder Tausenderpunkt formatieren * [[http://php.net/manual/de/function.rtrim.php|rtrim]] - Leerraum an Ende eines Strings entfernen * [[http://php.net/manual/de/function.str-pad.php|str_pad]] - String mit Füllzeichen auf eine bestimmte Länge auffüllen * [[http://php.net/manual/de/function.str-replace.php|str_replace]] - Teilstring Suchen und Ersetzen * [[http://php.net/manual/de/function.strlen.php|strlen]] - Länge eines Strings ermitteln * [[http://php.net/manual/de/function.strtolower.php|strtolower]] - String in Kleinbuchstaben umwandeln * [[http://php.net/manual/de/function.strtoupper.php|strtoupper]] - String in Großbuchstaben umwandeln * [[http://php.net/manual/de/function.substr-count.php|substr_count]] - Häufigkeit eines Teilstrings auszählen * [[http://php.net/manual/de/function.substr.php|substr]] - Teilstring ermitteln * [[http://php.net/manual/de/function.trim.php|trim]] - Leerzeichen am Anfang und Ende entfernen * Weiterhin erlaubt sind die Funktionen: [[http://php.net/manual/de/function.nl2br.php|nl2br]], [[http://php.net/manual/de/function.str-repeat.php|str_repeat]], [[http://php.net/manual/de/function.str-shuffle.php|str_shuffle]], [[http://php.net/manual/de/function.str-word-count.php|str_word_count]], [[http://php.net/manual/de/function.strip-tags.php|strip_tags]], [[http://php.net/manual/de/function.stripos.php|stripos]], [[http://php.net/manual/de/function.stristr.php|stristr]], [[http://php.net/manual/de/function.strpos.php|strpos]], [[http://php.net/manual/de/function.strrev.php|strrev]], [[http://php.net/manual/de/function.strripos.php|strripos]], [[http://php.net/manual/de/function.strrpos.php|strrpos]], [[http://php.net/manual/de/function.strstr.php|strstr]], [[http://php.net/manual/de/function.substr-replace.php|substr_replace]], [[http://php.net/manual/de/function.wordwrap.php|wordwrap]]\\ * Bilder zeichnen (z.B. Diagramme) * [[http://php.net/manual/de/function.imagecolorallocate.php|imagecolorallocate]] - Farbe für Grafik verwenden * [[http://php.net/manual/de/function.imagecreate.php|imagecreate]] - Neues Bild erzeugen * [[http://php.net/manual/de/function.imagecreatetruecolor.php|imagecreatetruecolor]] - Neues Bild in Echtfarben (16 Mio.) erzeichen * [[http://php.net/manual/de/function.imageellipse.php|imageellipse]] - Ellipse oder Kreis zeichnen * [[http://php.net/manual/de/function.imagefill.php|imagefill]] - Bild(bereich) mit Farbe füllen * [[http://php.net/manual/de/function.imagefilledarc.php| imagefilledarc]] - Gefüllten Kreissektor zeichnen * [[http://php.net/manual/de/function.imagefilledellipse.php|imagefilledellipse]] - Gefüllte Ellipse oder Kreis zeichnen * [[http://php.net/manual/de/function.imagefilledpolygon.php|imagefilledpolygon]] - Gefülltes Polygon zeichnen * [[http://php.net/manual/de/function.imagefilledrectangle.php|imagefilledrectangle]] - Gefülltes Rechteck zeichen * [[http://php.net/manual/de/function.imagefilltoborder.php|imagefilltoborder]] - Bild bis zu einer Linie mit einer Farbe füllen * [[http://php.net/manual/de/function.imageline.php|imageline]] - Gerade Linie zeichnen * [[http://php.net/manual/de/function.imagepolygon.php|imagepolygon]] - Polygon zeichnen * [[http://php.net/manual/de/function.imagerectangle.php|imagerectangle]] - Rechteck zeichnen * [[http://php.net/manual/de/function.imagesetbrush.php|imagesetbrush]] - Pinsel festlegen * [[http://php.net/manual/de/function.imagesetpixel.php|imagesetpixel]] - Pixel zeichen * [[http://php.net/manual/de/function.imagesetstyle.php|imagesetstyle]] - Stil für Linien festlegen * [[http://php.net/manual/de/function.imagesetthickness.php|imagesetthickness]] - Breite von Linien festlegen * [[http://php.net/manual/de/function.imagestring.php|imagestring]] - Text zeichnen (horizontal) * Weiterhin erlaubt sind die Funktionen: [[http://php.net/manual/de/function.image-type-to-extension.php|image_type_to_extension]], [[http://php.net/manual/de/function.image-type-to-mime-type.php|image_type_to_mime_type]], [[http://php.net/manual/de/function.imagearc.php|imagearc]], [[http://php.net/manual/de/function.imagechar.php|imagechar]], [[http://php.net/manual/de/function.imagecharup.php|imagecharup]], [[http://php.net/manual/de/function.imagecolorallocatealpha.php|imagecolorallocatealpha]], [[http://php.net/manual/de/function.imagecolorat.php|imagecolorat]], [[http://php.net/manual/de/function.imagecolorclosest.php|imagecolorclosest]], [[http://php.net/manual/de/function.imagecolorclosestalpha.php|imagecolorclosestalpha]], [[http://php.net/manual/de/function.imagecolorclosesthwb.php|imagecolorclosesthwb]], [[http://php.net/manual/de/function.imagecolordeallocate.php|imagecolordeallocate]], [[http://php.net/manual/de/function.imagecolorexact.php|imagecolorexact]], [[http://php.net/manual/de/function.imagecolorresolve.php|imagecolorresolve]], [[http://php.net/manual/de/function.imagecolorset.php|imagecolorset]], [[http://php.net/manual/de/function.imagecopy.php|imagecopy]], [[http://php.net/manual/de/function.imagecopymerge.php|imagecopymerge]], [[http://php.net/manual/de/function.imagecopymergegray.php|imagecopymergegray]], [[http://php.net/manual/de/function.imagecopyresampled.php|imagecopyresampled]], [[http://php.net/manual/de/function.imagecopyresized.php| imagecopyresized]], [[http://php.net/manual/de/function.imagedashedline.php| imagedashedline]], [[http://php.net/manual/de/function.imagedestroy.php|imagedestroy]], [[http://php.net/manual/de/function.imagefilter.php|imagefilter]], [[http://php.net/manual/de/function.imagefontheight.php|imagefontheight]], [[http://php.net/manual/de/function.imagefontwidth.php| imagefontwidth]], [[http://php.net/manual/de/function.imageinterlace.php|imageinterlace]], [[http://php.net/manual/de/function.imagepalettecopy.php|imagepalettecopy]], [[http://php.net/manual/de/function.imagerotate.php|imagerotate]], [[http://php.net/manual/de/function.imagesavealpha.php|imagesavealpha]], [[http://php.net/manual/de/function.imagesettile.php|imagesettile]], [[http://php.net/manual/de/function.imagestringup.php|imagestringup]], [[http://php.net/manual/de/function.imagesx.php|imagesx]], [[http://php.net/manual/de/function.imagesy.php|imagesy]], [[http://php.net/manual/de/function.imagetruecolortopalette.php|imagetruecolortopalette]] * Folgende Funktionen können in leicht modifizierter Form verwendet werden: [[http://php.net/manual/de/function.imagepng.php|imagepng]], [[http://php.net/manual/de/function.imagettftext.php|imagettftext]], [[http://php.net/manual/de/function.imagecreatefrompng.php|imagecreatefrompng]] * Sonstiges * [[http://php.net/manual/de/function.intval.php|intval]] - Variable in einen Integer-Wert umwandeln * [[http://php.net/manual/de/function.md5.php|md5]] - MD5-hash eines Wertes berechnen ===== Eingeschränkte Funktionen ===== Einige Funktionen stellen ein Sicherheitsrisiko dar oder funktionieren im Kontext des Fragebogens nicht wie erwartet. Nachfolgend sind Alternativen aufgeführt. Wenn Sie weitere Funktionen benötigen, teilen Sie es bitte SoSci Survey mit. * ''echo'' * ''[[:de:create:functions:html]]'' * ''[[:de:create:functions:text]]'' * ''mysqld_query()'' * ''[[de:create:databank]]'' * ''[[:de:create:functions::datasetretrieve|datasetRetrieve()]]'' ===== Funktionen im Detail ===== Für die Funktionen ist jeweils eine Referenz-Syntax angegeben, zum Beispiel: ''void **set**(mixed //Wert//, [string //Speicherplatz//])'' In dieser Referenz-Syntax steht, welche Argumente eine Funktion erwartet und welchen Datentyp diese haben. * Zu Anfang steht der Datentyp, den die Funktion zurückgibt. In diesem Fall //void//, das bedeutet, dass die Funktion nur etwas macht, aber keinen Wert zurückgibt. * In Klammern stehen dann die Argumente. Optionale Argumente sind in eckigen Klammern angegeben. Die Funktion ''set()'' muss also mindestens ein Argument //Wert// haben und darf ein zweites Argument //Speicherplatz// nutzen. * Vor den Argumenten steht jeweils wieder der Datentyp: * //mixed// bedeutet, dass unterschiedliche Datentypen erlaubt sind * //int// ist eine Zahl * //string// ist ein String, also ein Text, der in Anführungszeichen steht * //array// ist ein Array, also eine Liste von Werten ([[filter-items#arrays|Arrays]])