teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

見出し追加

2022/06/01 08:52

投稿

erajera
erajera

スコア22

title CHANGED
File without changes
body CHANGED
@@ -1,7 +1,10 @@
1
- ```$aug```を受け取る関数```get_result```の中で実行する```array_map```のコールバック関数に```$aug```を渡したいのですが、変数を参照できずにいます。
1
+ ## 前提
2
2
 
3
+ 整数の配列をループして、各値に固定値を足し算する関数があります。
3
- コード下記ようになっています。
4
+ 固定値関数呼び出し側から渡されます。
4
5
 
6
+ ## ソースコード
7
+
5
8
  ```php
6
9
  function addition($val, $aug) {
7
10
  return $val + $aug;
@@ -18,8 +21,14 @@
18
21
  };
19
22
  ```
20
23
 
21
- ```$aug```がグローバル変数ではないため、undefinedになるのではないかなと思うのですが、globalが無いと、```array_map```の中の```$aug```が見つからない、とエディタがエラーを示します。
24
+ ## 問題点
22
25
 
23
- 関数受け取る引、```array_map```のコールバック関数の第二引数して渡方法をご教示ただけないょうか
26
+ ```$aug```グローバル変ではないため、```array_map```のコールバック関数内で```$aug```がundefinedになるのではないかな思うのでが、globalが無と、```array_map```の中の```$aug```が見つからない、とエディタがエラーを示ます
24
27
 
28
+ ## 実現したいこと
29
+
30
+ 関数```get_result```の引数の```$aug```を、```array_map```のコールバック関数の中で参照し、関数```addition```に渡したいです。
31
+
32
+ ## 調べたこと
33
+
25
34
  「php スコープ 外 変数 取得」等で検索したものの、グローバル変数を取得する方法しか見つけられませんでした。

2

関数名

2022/06/01 08:45

投稿

erajera
erajera

スコア22

title CHANGED
File without changes
body CHANGED
@@ -1,19 +1,19 @@
1
- ```$aug```を受け取る関数の中で```array_map```のコールバック関数に```$aug```を渡したいのですが、変数を参照できずにいます。
1
+ ```$aug```を受け取る関数```get_result```の中で実行する```array_map```のコールバック関数に```$aug```を渡したいのですが、変数を参照できずにいます。
2
2
 
3
3
  コードは下記のようになっています。
4
4
 
5
5
  ```php
6
- function change_bar($val, $aug) {
6
+ function addition($val, $aug) {
7
7
  return $val + $aug;
8
8
  };
9
9
 
10
- function get_foo($aug)
10
+ function get_result($aug)
11
11
  {
12
12
  $array = [100, 200];
13
13
 
14
14
  $result = array_map(function($val) {
15
15
  global $aug; // undefined
16
- change_bar($val, $aug);
16
+ addition($val, $aug);
17
17
  } , $array);
18
18
  };
19
19
  ```

1

本文

2022/06/01 08:43

投稿

erajera
erajera

スコア22

title CHANGED
File without changes
body CHANGED
@@ -18,6 +18,8 @@
18
18
  };
19
19
  ```
20
20
 
21
- ```$aug```がグローバル変数ではないため、undefinedになるのではないかなと思うのですが、とはいえglobalが無いと、```array_map```の中の```$aug```が見つからない、とエディタがエラーを示します。
21
+ ```$aug```がグローバル変数ではないため、undefinedになるのではないかなと思うのですが、globalが無いと、```array_map```の中の```$aug```が見つからない、とエディタがエラーを示します。
22
22
 
23
- 関数が受け取る引数を、```array_map```のコールバック関数の第二引数として渡す方法をご教示いただけないでしょうか。
23
+ 関数が受け取る引数を、```array_map```のコールバック関数の第二引数として渡す方法をご教示いただけないでしょうか。
24
+
25
+ 「php スコープ 外 変数 取得」等で検索したものの、グローバル変数を取得する方法しか見つけられませんでした。