回答編集履歴

1

追記

2016/12/03 12:21

投稿

Takamoso
Takamoso

スコア248

test CHANGED
@@ -3,3 +3,75 @@
3
3
 
4
4
 
5
5
  checked属性を追加してやればいいのではないでしょうか。
6
+
7
+
8
+
9
+ 具体的なソースコード(一例)
10
+
11
+ ---
12
+
13
+
14
+
15
+ ```php
16
+
17
+ <?php
18
+
19
+
20
+
21
+ $text[0] = 'B';
22
+
23
+ $text[1] = 'C';
24
+
25
+
26
+
27
+ $form = <<< HTML
28
+
29
+ <form method='post' action=''>
30
+
31
+ <input type="checkbox" name="text[]" value="A">A
32
+
33
+ <input type="checkbox" name="text[]" value="B">B
34
+
35
+ <input type="checkbox" name="text[]" value="C">C
36
+
37
+ </form>
38
+
39
+ HTML;
40
+
41
+
42
+
43
+ // DOMドキュメント
44
+
45
+ $dom = new DOMDocument();
46
+
47
+ $dom->loadHTML($form);
48
+
49
+
50
+
51
+ // inputタグの数だけループ
52
+
53
+ foreach ($dom->getElementsByTagName('input') as $input)
54
+
55
+ {
56
+
57
+ // valueの値が$text配列に含まれていたら
58
+
59
+ if (in_array($input->getAttribute('value'), $text))
60
+
61
+ {
62
+
63
+ // checked属性追加
64
+
65
+ $input->setAttribute('checked', '');
66
+
67
+ }
68
+
69
+ }
70
+
71
+
72
+
73
+ // HTMLに出力
74
+
75
+ echo $dom->saveHTML();
76
+
77
+ ```