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

回答編集履歴

6

foreachに指定する配列を間違えていました。恥ずかしい。

2019/08/20 03:10

投稿

BluOxy
BluOxy

スコア2663

answer CHANGED
@@ -1,22 +1,30 @@
1
1
  `$user`を`foreach`で回せないのでしょうか。
2
2
 
3
3
  ```php
4
- foreach ($array as $value) {
4
+ foreach ($user as $value) {
5
5
  echo "{$value->name} のscore-(penalty✕5)は {$value->score-$value->penalty*5}\n";
6
6
  }
7
7
  ```
8
8
 
9
9
  そうすると`$score`という変数を作る必要がなくなります。
10
10
 
11
+ また、`$user`は配列なので変数名は`$users`の方が良いと思います。
12
+ 配列を複数形にすることで、下記コードのように各要素に単数形を命名できます。
13
+ ```php
14
+ foreach ($users as $user) {
15
+ echo "{$user->name} のscore-(penalty✕5)は {$user->score-$user->penalty*5}\n";
16
+ }
17
+ ```
18
+
11
19
  # 追記
12
20
  > 30はクリア、29ではノークリアで考えております。
13
21
  > ”$name”さんは”$score”点でクリアです
14
22
 
15
23
  ```php
16
- foreach ($array as $value) {
24
+ foreach ($users as $user) {
17
- $score = $value->score-$value->penalty*5;
25
+ $score = $user->score-$user->penalty*5;
18
26
  if($score >= 30){
19
- echo "{$value->name}さんは{$score}点でクリアです\n";
27
+ echo "{$user->name}さんは{$score}点でクリアです\n";
20
28
  }
21
29
  }
22
30
  ```

5

引用先を間違えたので修正

2019/08/20 03:10

投稿

BluOxy
BluOxy

スコア2663

answer CHANGED
@@ -9,7 +9,7 @@
9
9
  そうすると`$score`という変数を作る必要がなくなります。
10
10
 
11
11
  # 追記
12
- > (3)それぞれ30以下か計算
12
+ > 30はクリア、29ではノークリアで考えております。
13
13
  > ”$name”さんは”$score”点でクリアです
14
14
 
15
15
  ```php

4

追記

2019/08/20 03:06

投稿

BluOxy
BluOxy

スコア2663

answer CHANGED
@@ -6,4 +6,17 @@
6
6
  }
7
7
  ```
8
8
 
9
- そうすると`$score`という変数を作る必要がなくなります。
9
+ そうすると`$score`という変数を作る必要がなくなります。
10
+
11
+ # 追記
12
+ > (3)それぞれ30以下か計算
13
+ > ”$name”さんは”$score”点でクリアです
14
+
15
+ ```php
16
+ foreach ($array as $value) {
17
+ $score = $value->score-$value->penalty*5;
18
+ if($score >= 30){
19
+ echo "{$value->name}さんは{$score}点でクリアです\n";
20
+ }
21
+ }
22
+ ```

3

文章の修正

2019/08/20 03:04

投稿

BluOxy
BluOxy

スコア2663

answer CHANGED
@@ -4,4 +4,6 @@
4
4
  foreach ($array as $value) {
5
5
  echo "{$value->name} のscore-(penalty✕5)は {$value->score-$value->penalty*5}\n";
6
6
  }
7
- ```
7
+ ```
8
+
9
+ そうすると`$score`という変数を作る必要がなくなります。

2

改行も追加

2019/08/20 02:23

投稿

BluOxy
BluOxy

スコア2663

answer CHANGED
@@ -2,6 +2,6 @@
2
2
 
3
3
  ```php
4
4
  foreach ($array as $value) {
5
- echo "{$value->name} のscore-(penalty✕5)は {$value->score-$value->penalty*5}";
5
+ echo "{$value->name} のscore-(penalty✕5)は {$value->score-$value->penalty*5}\n";
6
6
  }
7
7
  ```

1

プロパティへのアクセスする構文を間違えていた

2019/08/20 02:21

投稿

BluOxy
BluOxy

スコア2663

answer CHANGED
@@ -2,6 +2,6 @@
2
2
 
3
3
  ```php
4
4
  foreach ($array as $value) {
5
- echo "{$value.name} のscore-(penalty✕5)は {$value.score-$value.penalty*5}";
5
+ echo "{$value->name} のscore-(penalty✕5)は {$value->score-$value->penalty*5}";
6
6
  }
7
7
  ```