2017-06-09 4 views
-1
1. $sql = "UPDATE table_name SET"; 
2. 
3. foreach($array as $key => $val){ 
4.  if($key == 'abc') 
5.   $val = 'test'; 
6.  $sql .= $key . " = '" . $val . "' "; 
7. } 
8. 
9. $sql .= "WHERE primary_key = 2"; 

foreachループ(行番号4-5)の値を調べる方が良いでしょうか?別のUpdateクエリを実行するには?これは一般的な例である複数のif対別のデータベースクエリ

OR

1. $sql = "UPDATE table_name SET"; 
2. 
3. foreach($array as $key => $val){ 
4.  $sql .= $key . " = '" . $val . "' "; 
5. } 
6. 
7. $sql .= "WHERE primary_key = 2"; 
8. 
9. $sql = "UPDATE table_name SET abc = 'test'"; 

*、事前にタイプミスと感謝を無視してください。

+1

、 'コンマないと動作しません' – WheatBeak

+0

@WheatBeak ...と第二バージョンは間違いなく意図したものOP行いませんが、OPはタイプミスを無視喜ばせるために言ったのだろうどちらも;-) –

+0

これは本当に何も ' –

答えて

0
1. $sql = "UPDATE table_name SET"; 
2. 
3. if(isset($array['abc'])){ 
4.  $array['abc'] = 'test'; 
5. } 
6. 
7. foreach($array as $key => $val){ 
8.  $sql .= $key . " = '" . $val . "', "; 
9. } 
10. 
11. $sql = substr($sql, 0, -2); 
12. $sql .= " WHERE primary_key = 2"; 

ありがとうございます。

関連する問題