Bifalgorithm post · Computer science one · Using Arrays in Functions

How are arrays passed to functions in PHP?

How are arrays passed to functions in PHP? (Computer science one · Using Arrays in Functions) — "By default, all arguments to a function in PHP are passed by v…

Ideas in this flowchart

  • PHP: Übergabe von Array-Argumenten an Funktionen
  • Standardmäßig werden Funktionsargumente in PHP per Wert übergeben, einschließlich Arrays.
  • Änderungen an einem per Wert übergebenen Array werden in der aufrufenden Funktion nicht wirksam.
  • Ein Array-Parameter kann ausdrücklich per Referenz übergeben werden.
  • Bei der Übergabe per Referenz werden Änderungen am Array in der aufrufenden Funktion wirksam.
  • Das Beispiel verwendet die Funktion setFirst($a), die das erste Array-Element auf 5 setzt.
  • Das Array $arr enthält zunächst die Werte 10, 20 und 30.
  • Nach dem Aufruf von setFirst($arr) bleibt das ursprüngliche Array unverändert.
  • Die Ausgabe zeigt weiterhin Array ( [0] => 10 [1] => 20 [2] => 30 ).
  • Die Referenzübergabe wird mit function setFirst(&$a) angegeben.
  • Durch &$a bezieht sich der Parameter direkt auf das ursprüngliche Array.
Feed/

How are arrays passed to functions in PHP?

No cover

Channel

Computer science one

1 page

"By default, all arguments to a function in PHP are passed by value; this includes arrays. Thus, if you make any changes to an array passed to a function, the changes are not realized in the calling function. You can explicitly specify that the array parameter is passed by reference so that any changes to the array are realized in the calling function. To illustrate, consider the following example.\n\n1 function setFirst($a) {\n\n2 $a[0] = 5;\n\n3 }\n\n4\n\n5 $arr = array(10, 20, 30);\n\n6 print_r($arr);\n\n7 setFirst($arr);\n\n8 print_r($arr);\n\nThis example results in the following.\n\nArray ( [0] => 10 [1] => 20 [2] => 30 )\n\nArray ( [0] => 10 [1] => 20 [2] => 30 )\n\nThat is, the change to the first element does not affect the original array. However, if we specify that the array is passed by reference, then the change is realized. For example,\n\n1 function setFirst(&$a) {\n\n2 $a[0] = 5;\n\n3 }\n\n4\n\n5 $arr = array(10, 20, 30);"

Flowchart preview
👍
0
0 comments0 shares

Sign in to view and post comments.