簡體   English   中英

通過功能循環直到滿足條件

[英]Looping through function until condition is met

我正在嘗試構建一個php函數來檢查數據庫中是否存在某個url:

 $sql = "SELECT * FROM taskProposals WHERE url='$string'";
    $query = mysql_query($sql);
    $quantity = 0;
    while ($row = mysql_fetch_assoc($query)) { 
        $quantity++; 
    }
    if ($quantity>0) {
        $string = $string.$quantity;
    }

    return $string;

我構造此代碼的方式的問題是它只會在第一次找到相同的$ string時才能工作。 一旦我通過添加$quantity來更改URL,我需要再次檢查它以確保新的url不存在。 基本上,我需要遍歷此檢查功能,直到我有一個完全獨特的URL。 經過大量的反復試驗,我無法弄清楚如何設置它。

非常低效。 你開車到商店,購買特定類型的所有物品,裝入你的車,開車回家,計算你買了多少,然后把它們扔掉。 為什么不更像:

$sql = "SELECT count(*) AS cnt FROM taskProposals WHERE url='$string';"
$result = mysql_query($sql) or die(mysql_error());
$row = mysql_fetch_assoc($result);
$quantity = $row['cnt'];

不要強制數據庫獲取您只是忽略的數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM