我的表由100個不同的名字,所有的獨特和所有主鍵是1-100之間的一個數。只使用一點整一次
如何從第一個開始,並呼籲每個名稱確保其只使用一次,一次使用每個名稱的功能它開始回過在一個和循環5次。
我該如何做到這一點?
我的表由100個不同的名字,所有的獨特和所有主鍵是1-100之間的一個數。只使用一點整一次
如何從第一個開始,並呼籲每個名稱確保其只使用一次,一次使用每個名稱的功能它開始回過在一個和循環5次。
我該如何做到這一點?
如果所有的名稱本身是獨特的,那麼你不應該擔心檢查,如果該名稱已被調用,因爲它只會在您的記錄,一旦存在。
如果你所需要的是你的函數的名字和id,並且你的名字總數不會太大(就像你提到的〜100),那麼最簡單的辦法就是把它們全部存入內存中,這樣你就不用處理DB遊標或重新查詢。
PDO實例:
$db = new PDO($dsn, $username, $password);
// fetch all records returning an array like:
// array($id => $name)
$names = $db->query('SELECT id, name FROM tablename')->fetchAll(PDO::FETCH_KEY_PAIR);
for($i = 0; $i < 5; $i++)
{
foreach($names as $id => $name)
{
myfunction($id, $name); // call your function
}
}
mysqli的例子:
$db = new Mysqli($host, $username, $password, $dbname);
$result = $db->query('SELECT id, name FROM tablename');
if($result)
{
$names = $result->fetch_all(MYSQLI_ASSOC);
$result->free();
for($i = 0; $i < 5; $i++)
{
foreach($names as $j => $row)
{
myfunction($row['id'], $row['name']); // call your function
}
}
}
http://codeigniter.com/user_guide/database/index.html
$this->db->select('id, name');
$query = $this->db->get('mytable');
for($i =0; i<5; i++){
foreach ($query->result_array() as $row)
{
/* you can use $row['id'] and $row['name']
and pass them as arguments your function
*/
}
}
你可能想提一下在那裏使用的數據庫擴展或庫,所以沒有混淆......看起來像CodeIgniter,也許? – prodigitalson 2011-03-23 23:44:14
我已經添加了由CodeIgniter提供的數據庫類的鏈接。 - 問候。 – Vamsi 2011-03-25 10:22:46
所以,你要叫上表中的每個項目的功能,以五次? – sarnold 2011-03-23 06:57:46
您可以在表格中添加一列,告訴您在該行調用了多少次函數? – edmz 2011-03-23 06:58:48
是的,那正是我想要做的 – joe 2011-03-23 06:58:55