質問編集履歴

4

間違ってた

2016/08/01 06:59

投稿

igaiga
igaiga

スコア144

test CHANGED
File without changes
test CHANGED
@@ -87,151 +87,3 @@
87
87
  }
88
88
 
89
89
  ```
90
-
91
-
92
-
93
-
94
-
95
- 関数にした場合はこんな感じでしょうか?
96
-
97
- なにかいろいろと間違っている気がしますが。。。
98
-
99
-
100
-
101
- ###関数にした場合のソースコード
102
-
103
- ```
104
-
105
- $j=0;
106
-
107
- $replace = array('.',',','、','。');
108
-
109
-
110
-
111
- function toNumber($val) {
112
-
113
-
114
-
115
- //9.5万円形式の場合の変換
116
-
117
- if(preg_match("/万円/",$val)){
118
-
119
-
120
-
121
- //万円削除→9.5
122
-
123
- $val = str_replace("万円", "",$val);
124
-
125
-
126
-
127
- //半角数字に変換→9.5(ドットは無視されるといいな)
128
-
129
- $val = mb_convert_kana($val, "n");
130
-
131
-
132
-
133
- //×10000にして桁を合わせる→95000
134
-
135
- $val = sprintf('%.0f', $val * 10000);
136
-
137
-
138
-
139
- //数字以外の文字が入っている場合は値を空にする
140
-
141
- if(preg_match("/^[0-9]+$/",$val)){
142
-
143
- } else {
144
-
145
- $val = "";
146
-
147
- }
148
-
149
- //その他の場合の変換
150
-
151
- } else {
152
-
153
-
154
-
155
- //円削除
156
-
157
- $val = str_replace("円", "",$val);
158
-
159
-
160
-
161
- //半角数字に変換(ドットは無視されるといいな)
162
-
163
- $val = mb_convert_kana($val, "n");
164
-
165
-
166
-
167
- //カンマ、ドット等を削除
168
-
169
- $val = str_replace($replace,'',$val);
170
-
171
-
172
-
173
- //数字以外の文字が入っている場合は値を空にする
174
-
175
- if(preg_match("/^[0-9]+$/",$val)){
176
-
177
- } else {
178
-
179
- $val = "";
180
-
181
- }
182
-
183
- }
184
-
185
- return $val;
186
-
187
- }
188
-
189
-
190
-
191
- //賃料①の取得
192
-
193
- $val = $url2->rent_amount;
194
-
195
- toNumber($val);
196
-
197
- //ここで$valが整形されて戻ってくる?
198
-
199
- $rent_amount[$j] = $val;
200
-
201
-
202
-
203
- //賃料②がある場合の取得
204
-
205
- if(!empty($url2->room_keyword1)){
206
-
207
- $j++;
208
-
209
- $val = $url2->room_keyword1;
210
-
211
- toNumber($val);
212
-
213
- //ここで$valが整形されて戻ってくるといいな
214
-
215
- $rent_amount[$j] = $val;
216
-
217
- }
218
-
219
-
220
-
221
- //賃料③がある場合の取得
222
-
223
- if(!empty($url2->room_keyword2)){
224
-
225
- $j++;
226
-
227
- $val = $url2->room_keyword2;
228
-
229
- toNumber($val);
230
-
231
- //ここで$valが整形されて戻ってくると期待
232
-
233
- $rent_amount[$j] = $val;
234
-
235
- }
236
-
237
- ```

3

追記変更

2016/08/01 06:59

投稿

igaiga
igaiga

スコア144

test CHANGED
File without changes
test CHANGED
@@ -90,8 +90,12 @@
90
90
 
91
91
 
92
92
 
93
+
94
+
93
95
  関数にした場合はこんな感じでしょうか?
94
96
 
97
+ なにかいろいろと間違っている気がしますが。。。
98
+
95
99
 
96
100
 
97
101
  ###関数にした場合のソースコード

2

追記

2016/08/01 06:39

投稿

igaiga
igaiga

スコア144

test CHANGED
File without changes
test CHANGED
@@ -87,3 +87,147 @@
87
87
  }
88
88
 
89
89
  ```
90
+
91
+
92
+
93
+ 関数にした場合はこんな感じでしょうか?
94
+
95
+
96
+
97
+ ###関数にした場合のソースコード
98
+
99
+ ```
100
+
101
+ $j=0;
102
+
103
+ $replace = array('.',',','、','。');
104
+
105
+
106
+
107
+ function toNumber($val) {
108
+
109
+
110
+
111
+ //9.5万円形式の場合の変換
112
+
113
+ if(preg_match("/万円/",$val)){
114
+
115
+
116
+
117
+ //万円削除→9.5
118
+
119
+ $val = str_replace("万円", "",$val);
120
+
121
+
122
+
123
+ //半角数字に変換→9.5(ドットは無視されるといいな)
124
+
125
+ $val = mb_convert_kana($val, "n");
126
+
127
+
128
+
129
+ //×10000にして桁を合わせる→95000
130
+
131
+ $val = sprintf('%.0f', $val * 10000);
132
+
133
+
134
+
135
+ //数字以外の文字が入っている場合は値を空にする
136
+
137
+ if(preg_match("/^[0-9]+$/",$val)){
138
+
139
+ } else {
140
+
141
+ $val = "";
142
+
143
+ }
144
+
145
+ //その他の場合の変換
146
+
147
+ } else {
148
+
149
+
150
+
151
+ //円削除
152
+
153
+ $val = str_replace("円", "",$val);
154
+
155
+
156
+
157
+ //半角数字に変換(ドットは無視されるといいな)
158
+
159
+ $val = mb_convert_kana($val, "n");
160
+
161
+
162
+
163
+ //カンマ、ドット等を削除
164
+
165
+ $val = str_replace($replace,'',$val);
166
+
167
+
168
+
169
+ //数字以外の文字が入っている場合は値を空にする
170
+
171
+ if(preg_match("/^[0-9]+$/",$val)){
172
+
173
+ } else {
174
+
175
+ $val = "";
176
+
177
+ }
178
+
179
+ }
180
+
181
+ return $val;
182
+
183
+ }
184
+
185
+
186
+
187
+ //賃料①の取得
188
+
189
+ $val = $url2->rent_amount;
190
+
191
+ toNumber($val);
192
+
193
+ //ここで$valが整形されて戻ってくる?
194
+
195
+ $rent_amount[$j] = $val;
196
+
197
+
198
+
199
+ //賃料②がある場合の取得
200
+
201
+ if(!empty($url2->room_keyword1)){
202
+
203
+ $j++;
204
+
205
+ $val = $url2->room_keyword1;
206
+
207
+ toNumber($val);
208
+
209
+ //ここで$valが整形されて戻ってくるといいな
210
+
211
+ $rent_amount[$j] = $val;
212
+
213
+ }
214
+
215
+
216
+
217
+ //賃料③がある場合の取得
218
+
219
+ if(!empty($url2->room_keyword2)){
220
+
221
+ $j++;
222
+
223
+ $val = $url2->room_keyword2;
224
+
225
+ toNumber($val);
226
+
227
+ //ここで$valが整形されて戻ってくると期待
228
+
229
+ $rent_amount[$j] = $val;
230
+
231
+ }
232
+
233
+ ```

1

誤字

2016/08/01 06:33

投稿

igaiga
igaiga

スコア144

test CHANGED
File without changes
test CHANGED
@@ -17,18 +17,6 @@
17
17
 
18
18
 
19
19
  特にif(preg_match("/^[0-9]+$/",$rent_amount[$j]))の部分はまったく同じなので整理したいです。
20
-
21
-
22
-
23
- ###発生している問題・エラーメッセージ
24
-
25
-
26
-
27
- ```
28
-
29
- エラーメッセージ
30
-
31
- ```
32
20
 
33
21
 
34
22