gpt4 book ai didi

php - BackboneJS + Codeigniter 将 API 结果转换为字符串

转载 作者:行者123 更新时间:2023-11-30 00:31:44 24 4
gpt4 key购买 nike

我有一个 Backbone 应用程序,我在其中使用 Codeigniters Restful API。我有这个功能,可以从 MySQL 数据库获取Artistnames。现在,我的 API 给出的结果如下:

{"artist_name" : "Queens of the stone age"}

我想要实现的是我得到像 /queensofthestoneage 这样的名称。我怎样才能实现这一目标?

我的主干 View 如下所示:

function (App, Backbone) {
var Artistname = App.module();

Artistname.View = Backbone.View.extend({
template: 'artistname',
initialize: function() {
this.listenTo(this.collection, 'all', this.render)
},
serialize: function() {
return this.collection ? this.collection.toJSON() : [];
}
});
Artistname.ArtistnameCollection = Backbone.Collection.extend({
url: function() {
return '/project/ci/index.php/api/artistchannel/artistname/' + this.artist_id;
}
});

return Artistname;
}

我的 Codeigniter/API MySQL 查询如下所示:

public function a_artists_get()  
{
$this->load->database();
$sql = "SELECT formated_name FROM `artists` WHERE formated_name LIKE 'A%'";
$query = $this->db->query($sql);
$data = $query->result();

if($data) {
$this->response($data, 200);
} else {
$this->response(array('error' => 'Couldn\'t find any artists with letter a!'), 404);
}
}

欢迎任何帮助!

提前致谢...

最佳答案

假设您正在谈论服务器端,在 PHP 中,您可以使用 str_replace() 来删除空格,或使用 preg_replace() 来删除任何空格。带有正则表达式的空格。然后使用 strtolower() 将数据转换为小写,然后再将数据转换为 JSON:

echo strtolower(preg_replace("/\s+/", '', "Queens of the Stone Age"));
echo strtolower(str_replace(" ", '', "Queens of the Stone Age"));

如果您可以保证 MySQL 的数据中全部出现空格(例如没有回车符),那么 str_replace() 就是最佳选择,因为它更快。否则,我可能会使用正则表达式方法,因为它将删除所有空格。

关于php - BackboneJS + Codeigniter 将 API 结果转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22459934/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com