亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用 php 轉義要在 Highcharts 中顯示的數據中的單引號?

如何使用 php 轉義要在 Highcharts 中顯示的數據中的單引號?

PHP
守候你守候我 2022-07-09 10:44:53
我正在嘗試顯示一個包含工具提示的圖表,該工具提示顯示一個可以包含撇號(單引號)的字符串。使用 php 從數據庫中檢索數據。我要顯示的系列中每個點的數據由 x 值(日期時間)、y 值(數字)、距離和要在工具提示中顯示的名稱(字符串)組成。一切正常,直到從數據庫讀取的名稱包含單引號,例如 Tegg's,此時圖表不顯示。我認為這是因為 JSON_ENCODE 不會轉義單引號字符串中的單引號。我無法在 JSON_ENCODE 之前轉義單引號,因為它會轉義轉義字符。我怎樣才能讓它工作?我的代碼如下:foreach ($this->hcRides as $ride){    $point['x'] = strtotime($ride->event_date) * 1000;    $point['y'] = $ride->ranking_points;    $point['name'] = "'$ride->event_name'";    $point['distance'] = "'$ride->distance'";    array_push($countingRideData, json_encode($point));}// Strip the double-quotes out of the JSON$countingRideDataString = str_replace('"', "", join($countingRideData, ','));然后我將 $countingRideDataString 回顯為系列中的數據。hcoptions.series.push({                type: 'column',                name: 'Counting Rides',                data: [<?php echo $countingRideDataString; ?>],                color: '#222845',                tooltip: {                    customTooltip: function() {                        return '<table class="tt-chart-table"><thead><tr><th>' + this.key + '</th></tr></thead><tbody><tr><td>' + this.point.distance + '</td></tr><tr><td><b>' + this.y + '</b> points</td></tr></tbody></table>'                    }                },                zIndex: 2            });
查看完整描述

1 回答

?
慕尼黑的夜晚無繁華

TA貢獻1864條經驗 獲得超6個贊

json_encode()正是您在這里需要的工具,但您似乎正在與它作斗爭,試圖撤消它的工作并用您身邊的手動工作代替它。


正常創建單個數據結構。不要試圖編碼任何東西。例如


// Don't do this:

$point['name'] = "'$ride->event_name'";

// Do this instead:

$point['name'] = $ride->event_name;

// Don't do this:

array_push($countingRideData, json_encode($point));

// Do this instead:

array_push($countingRideData, $point);

// Remove this altogether:

$countingRideDataString = str_replace('"', "", join($countingRideData, ','));

編碼一次,最后:


    // Don't do this:

    data: [<?php echo $countingRideDataString; ?>],

    // Do this instead:

    data: <?php echo json_encode(countingRideData); ?>,


查看完整回答
反對 回復 2022-07-09
  • 1 回答
  • 0 關注
  • 97 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號