2012-05-10 2 views
5

Possible Duplicate:
PHP split alternative?Split() осуждается

// Successful geocode 
$geocode_pending = false; 
$coordinates = $xml->Response->Placemark->Point->coordinates; 
$coordinatesSplit = split(",", $coordinates); 
// Format: Longitude, Latitude, Altitude 
$lat = $coordinatesSplit[1]; 
$lng = $coordinatesSplit[0]; 

Привет народ, это часть моей геолокации коды. Я пытаюсь изменить сохраненный адрес на lat/long, а затем сохранить lat/long в базе данных. Они используют функцию split для размещения строки в массиве, но поскольку php 5.3.0 функция устарела. У кого-нибудь есть решение?

Спасибо

EDIT:

Когда я использую этот

$coordinatesSplit = preg_split(",", $coordinates); 

я получать следующее сообщение об ошибке

preg_split() [function.preg-split]: No ending delimiter

Последнее редактирование Когда я что-то добавить к databa se, длинные/поздние автоматически сохраняются. Но когда я хочу добавить, например, 6-й адрес в базе данных, скрипт для генерации lat/long автоматически выполняет это по всем записям в базе данных. Есть ли возможность сделать это только при последнем добавлении? ---->Geolocation LONG/LAN in database

+0

@felix KlingThanks, Извините, это была моя ошибка. Извините. теперь я получаю эту ошибку: preg_split() [function.preg-split]: Без конечного разделителя – Niels

+0

'', '' не является регулярным выражением, поэтому нет необходимости использовать 'preg_split'. Вместо этого используйте 'explode'. Если вы хотите использовать регулярное выражение, я рекомендую ознакомиться с http://www.php.net/manual/en/reference.pcre.pattern.syntax.php, чтобы сначала ознакомиться с синтаксисом. –

+0

Благодарим вас за быстрые ответы. Когда я использую этот, $ координатSplit = explode (",", $ координат); геолокация не работает .EDIT, все решается с помощью функции разрыва, но у меня есть другой вопрос. – Niels

ответ

13

Вы можете получить простой код:

list($lat,$lng) = explode(",",$coordinates); 

Это непосредственно присваивает результат explode в две переменные для вас.

+0

Это потребуется после обновления до PHP7 –

4

Как обсуждалось в комментариях, используйте explode() вместо:

$coordinatesSplit = explode(",", $coordinates); 
Смежные вопросы