[英]Remove Last Character From String If It's a “!” Using For-Loop - JavaScript
[英]How to remove the last character from last string in a While loop?
我正在嘗試在 Google Charts 腳本中插入一個 PHP 循環,其中包含來自我的 mysql 數據庫的數據。
我的數據庫結果如下所示:
$result = $wpdb->get_results(
"Query");
我試圖做的循環應該是這樣的
['$result', $result],
這就是我到目前為止想出的
$count = 0;
while ($count < count($result)) {
echo "['" . $result[$count]->dato . "', " . $result[$count]->vaegt . "].<br>";
$count++;
}
這創建了我正在尋找的字符串。 問題是我需要從循環中的最后一個字符串中刪除逗號。
我已經嘗試過 function LTRIM,但它會從循環中的每個字符串中刪除它,而不僅僅是最后一個。
解決此問題的最佳解決方案是什么?
首先,不要在循環中使用 count() 。 它可能看起來很方便,但速度較慢,因為它在每次迭代中一遍又一遍地執行操作。 首先將計數結果分配給變量。 就個人而言,我會在這里使用 for() 循環。
其次,您需要在循環內使用條件。 與其嘗試刪除最后一個逗號,不如檢查迭代計數,如果不是最后一個,則添加一個逗號。
$count = count($result);
for($i = 0; $i < $count; $i++)
{
echo ....
if $i < $count
{
echo ", ";
}
}
你可以使用json_encode,我想它會給你你想要的那種output。
像這樣:
$arr = array();
foreach ( $result as $res ) {
$dato = $res->dato;
$vaegt = $res->vaegt;
$arr[$dato] = $vaegt;
}
$output = json_encode($arr);
echo $output;
這將轉到 output:
{“dato1”:“vaegt1”,“dato2”:“vaegt2”,等等...}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.