从存储在数据库中的NSArray中删除字符

时间:2014-03-03 00:52:03

标签: php mysql nsarray

我在NSArray中有一些坐标,我用PHP将它们存储在MySQL数据库中,当检索它们时,它们显示为:

(
    "37.351701,-122.105898",
    "37.351945,-122.106109",
    "37.352183,-122.106338"
)

我需要他们:

37.351701,-122.105898,
37.351945,-122.106109,
37.352183,-122.106338

如何删除不需要的字符?

创建数组:

self.trackCoord = [NSString stringWithFormat:@"%f,%f",newLocation.coordinate.latitude, newLocation.coordinate.longitude];

        if (!self.trackArray) {
        self.trackArray = [[NSMutableArray alloc] init];
        }
        [self.trackArray addObject:self.trackCoord];
        NSLog(@"%@", self.trackArray);

        //some code to post to the php url

添加到数据库的PHP代码:

<?php
mysql_connect($host, $user, $pass);
@mysql_select_db($db) or die("Unable to find database");

$trackArray = $_GET["trackArray"];

$query = "INSERT INTO routes VALUES ('', '".mysql_real_escape_string($trackArray)."')";

mysql_query($query) or die (mysql_error("error"));
mysql_clsoe();
?>

检索数组:

//some code to get the route
NSString* route = _currentRoute.trackArray;
NSArray* routeCoord = [route componentsSeparatedByString:@"\n"];
NSLog(@"%@",routeCoord);

1 个答案:

答案 0 :(得分:1)

啊,现在我看到你在做什么......你实际上正在做的一切。

当你这样做时:

NSLog(@"%@",routeCoord);

您正在打印出数组的枚举内容,这些内容是NSString对象。

为方便显示目录内容,NSArray的“description”方法(NSLog用于打印)默认将字符串(XXX,XXX)放入引号。

包含原始坐标的字符串 - 加上它们之间的逗号 - 以及 引号,是您的数据库中保存的内容。