经常犯的错误是把一个SQL 操作放置到一个循环中,这就导致频繁的访问数据库,更重要的是,这会直接导致脚本的性能低下。以下的例子,你能够把一个循环操作重置为一个单一的SQL语句。

  1. foreach ($userList as $user) {
  2. $query = 'INSERT INTO users (first_name,last_name) VALUES("' . $user['first_name'] . '", "' . $user['last_name'] . '")';
  3. mysql_query($query);
  4. }

过程:

  1. INSERT INTO users (first_name,last_name) VALUES("John", "Doe")

替换这种循环方案,你能够拼接数据成为一个单一的数据库操作。

  1. $userData = array();
  2. foreach ($userList as $user) {
  3. $userData[] = '("' . $user['first_name'] . '", "' . $user['last_name'] . '")';
  4. }
  5. $query = 'INSERT INTO users (first_name,last_name) VALUES' . implode(',', $userData);
  6. mysql_query($query);

过程:

  1. INSERT INTO users (first_name,last_name) VALUES("John", "Doe"),("Jane", "Doe")...

分类: PHP

标签:   php