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

回答編集履歴

2

編集

2019/04/14 08:08

投稿

kou0179
kou0179

スコア304

answer CHANGED
@@ -6,18 +6,6 @@
6
6
  ### サンプルコード
7
7
  ```php
8
8
  <?php
9
- function hoge(){
10
- $names = ['tom','mic'];
11
- foreach ($names as $name) {
12
- function fuga_$name(){ // ←これではできない
13
- echo 'my name is'.$name.'.';
14
- }
15
- }
16
- }
17
-
18
- //「fuga_tom();」と「fuga_mic();」を実行したい
19
- hoge();
20
-
21
9
  class Human {
22
10
  //宣言
23
11
  private $name = '';

1

サンプルコード記載

2019/04/14 08:08

投稿

kou0179
kou0179

スコア304

answer CHANGED
@@ -1,3 +1,42 @@
1
1
  これを実現するために、オブジェクト指向のclassが用意されています。
2
2
 
3
- [PHP: クラスの基礎 - Manual](https://www.php.net/manual/ja/language.oop5.basic.php)
3
+ [PHP: クラスの基礎 - Manual](https://www.php.net/manual/ja/language.oop5.basic.php)
4
+
5
+
6
+ ### サンプルコード
7
+ ```php
8
+ <?php
9
+ function hoge(){
10
+ $names = ['tom','mic'];
11
+ foreach ($names as $name) {
12
+ function fuga_$name(){ // ←これではできない
13
+ echo 'my name is'.$name.'.';
14
+ }
15
+ }
16
+ }
17
+
18
+ //「fuga_tom();」と「fuga_mic();」を実行したい
19
+ hoge();
20
+
21
+ class Human {
22
+ //宣言
23
+ private $name = '';
24
+
25
+ //コンストラクタ
26
+ function __construct($name) {
27
+ $this->name = $name;
28
+ }
29
+
30
+ // 名前の表示
31
+ public function print_name() {
32
+ echo 'my name is '.$this->name.'.';
33
+ }
34
+ }
35
+
36
+ $tom = new Human('tom');
37
+ $mic = new Human('mic');
38
+
39
+ $tom->print_name();
40
+ $mic->print_name();
41
+
42
+ ```