PHP - 删除最后一个字符,而
问题描述:
我知道很多函数来删除在PHP中的字符。但我很困惑删除此: 我想删除 “” 从PHP - 删除最后一个字符,而
<?php
include '../config/settings.php';
$query = "SELECT keyword,count(*) AS jumlah
FROM search GROUP BY keyword ASC";
$result = mysql_query($query);
while($row = mysql_fetch_array($result))
{
$data= "['$row[keyword]', $row[jumlah]],<br>";
echo $data;}
?>
会给结果:
['Smartfren', 1],
['Telkomsel', 1],
我想要的输出,如:
['Smartfren', 1],
['Telkomsel', 1]
如何去做?
非常感谢您的回复。
UPDATE
基于@orangpill回答说,我有印像数据:
['ABC', 6597],
['XYZ', 4479],
['PQR', 2075],
['Others', 450]
我想打一个图表,说JS图表的代码必须是这样的:
data: [
['Firefox', 45.0],
['IE', 26.8],
{
name: 'Chrome',
y: 12.8,
sliced: true,
selected: true
},
['Safari', 8.5],
['Opera', 6.2],
['Others', 0.7]
]
基于@orangepill现在我的代码:
<?php
include '../config/settings.php';
$query = "SELECT keyword,count(*) AS jumlah
FROM search GROUP BY keyword ASC";
$result = mysql_query($query);
$data = array();
while($row = mysql_fetch_array($result))
{
$data[] = "['$row[keyword]', $row[jumlah]]";
}
echo implode(",<br/>", $data);
?>
<script type="text/javascript">
$(function() {
$('#container').highcharts({
chart: {
plotBackgroundColor: null,
plotBorderWidth: null,
plotShadow: false
},
title: {
text: 'Presentase Sentimen Positif'
},
tooltip: {
pointFormat: '{series.name}: <b>{point.percentage}%</b>',
percentageDecimals: 1
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {
enabled: true,
color: '#000000',
connectorColor: '#000000',
formatter: function() {
return '<b>'+ this.point.name +'</b>: '+ Math.round(this.percentage) +' %';
}
}
}
},
series: [{
type: 'pie',
name: 'Nilai',
data: [
<?php while($row = mysql_fetch_array($result))
{
$data[] = "['$row[keyword]', $row[jumlah]]";
}
echo implode(",<br/>", $data); ?>
]
}]
});
});
</script>
答
它可能使你的感觉通过构建一个数组,爆它,当你想输出
<?php
include '../config/settings.php';
$query = "SELECT keyword,count(*) AS jumlah
FROM search GROUP BY keyword ASC";
$result = mysql_query($query);
$data = array();
while($row = mysql_fetch_array($result))
{
$data[] = "['$row[keyword]', $row[jumlah]]";
}
echo implode(",<br/>", $data);
?>
如果格式化该数据的消费由JavaScript一个更好的办法是使用做到这一点json_encode。
<?php
include '../config/settings.php';
$query = "SELECT keyword,count(*) AS jumlah
FROM search GROUP BY keyword ASC";
$result = mysql_query($query);
$data = array();
while($row = mysql_fetch_array($result))
{
$data[] = array($row[keyword], (int)$row[jumlah]);
}
echo "var data = ".json_encode($data).";";
?>
答
RTRIM():
$data = rtrim($data, ',');
,或者在你的特定示例中,SUBSTR:
$data = substr($data, 0, -5);
删除 “
” 的可能。
答
您也可以使用substr()
功能:你的循环后
$data = "";
while($row = mysql_fetch_array($result)) {
$data .= "['$row[keyword]', $row[jumlah]],<br>";
}
$data = substr($data, 0, -5);
echo $data;
也...它看起来像你正在试图建立json ....如果是这种情况,看看json_encode – Orangepill
感谢@orangepill – user2597016
@ user2597016更新回答与json编码使用示例 – Orangepill