回答編集履歴

3

コメントに対して追記

2022/11/12 05:29

投稿

CHERRY
CHERRY

スコア25171

test CHANGED
@@ -10,3 +10,34 @@
10
10
 
11
11
  `'<input type="hidden" name="name" value="'` と `$staff_name`の中身 と `'">'` を 文字列演算子(`.`)で連結して echo しています。
12
12
 
13
+ ----
14
+ コメントに対する追記
15
+
16
+ > なぜ連結する必要があるのか
17
+
18
+ 入力した文字列を「入力画面」から「確認画面」へ、「確認画面」から次の「登録画面」に 順に受け渡す必要があります。
19
+
20
+ HTML の form を用いて入力された文字列を受け渡しています。
21
+ form の中で、 input hidden 要素( `<input type="hidden" 〜>` )を用いて送信するようにしています。
22
+
23
+ 入力される文字列は毎回変わるので、固定の文字列であらかじめ `<input type="hidden" 〜>` の中に名前を書いておくことができませんので、固定の文字列の中に 「入力画面で入力された名前の値」をいれるために「固定の文字列」と「入力された値」の連結をしています。
24
+
25
+
26
+ > ダブルクォーテーションだけではなくシングルクォーテーションもあわせて使用されているのかということがわからない
27
+
28
+ form で使用する input 文は、`<input type="hidden" name="name" value="入力した名前">` のようになりますが、文字列の中に `"` が含まれています。
29
+
30
+ ダブルクオーテーションは、 HTML の input 文で使用されている文字です。
31
+
32
+ PHP の文字列として、 「ダブルクオーテーションを含んだ文字列」を指定するために 「ダブルクオーテーションを含んだ文字列」全体をシングルクォーテーション で囲っています。
33
+
34
+ もちろん、文字列に含まれるダブルクオーテーション文字(`"`)の前に バックスラッシュ(`\`) をつけて ダブルクオーテーションをエスケースすることで、下記のようにダブルクオーテーションだけで記載することは可能ですが、見にくい等があり「ダブルクオーテーションを含んだ文字列」の場合は、シングルクォーテーションで囲うことが多いと思います。
35
+
36
+ 「ダブルクオーテーションを含んだ文字列」をダブルクオーテーションで囲った例
37
+ ```
38
+ echo "<input type=\"hidden\" name=\"name\" value=\"" . $staff_name ."\">";
39
+ ```
40
+
41
+ PHPの文字列の扱いについて、詳しくは [文字列](https://www.php.net/manual/ja/language.types.string.php) をお読みください。
42
+
43
+

2

補足

2022/11/11 12:41

投稿

CHERRY
CHERRY

スコア25171

test CHANGED
@@ -8,5 +8,5 @@
8
8
 
9
9
  であれば、
10
10
 
11
- `'<input type="hidden" name="name" value="'` と `$staff_name` と `'">'` を 文字列演算子(`.`)で連結して echo しています。
11
+ `'<input type="hidden" name="name" value="'` と `$staff_name`の中身 と `'">'` を 文字列演算子(`.`)で連結して echo しています。
12
12
 

1

語句の修正

2022/11/11 12:40

投稿

CHERRY
CHERRY

スコア25171

test CHANGED
@@ -8,7 +8,5 @@
8
8
 
9
9
  であれば、
10
10
 
11
- `'<input type="hidden" name="name" value="'` と `$staff_name` と `'">'` を `.`で連結して echo しています。
11
+ `'<input type="hidden" name="name" value="'` と `$staff_name` と `'">'` を 文字列演算子(`.`)で連結して echo しています。
12
12
 
13
-
14
-