2013-08-01 88 views
0

使用PHP,我正在尋找解析字符串並將其轉換爲變量。具體來說,該字符串將是一個文件名,我正在尋找將文件名分解爲變量。文件是大自然的照片,並有統一的格式:PHP如何解析字符串並將其轉換爲變量

species_name-日期locationcode城市

所有文件名稱具有這種精確格式,而「 - 」是分隔符。 (我可以在必要時無論做)

文件名的例子是common_daisy-20130731-ABCD-達拉斯

我想打破它轉化爲$ speciesname變量$日期,$ locationcode,$市。

關於如何做到這一點的任何想法?我已經看到了解析字符串的函數,但它們通常採用字符串中變量名稱的形式(例如「species = daisy & date = 20130731 & location = ABCD & city = Dallas」),沒有,也不能讓我的文件名稱匹配。如果我想使用字符串替換將分隔符更改爲變量=我將不得不在文件名中使用4個不同的分隔符,並且不會爲我工作。

感謝任何試圖幫助解決此問題的人。

回答

1

列表($ speciesname,$日期,$ locationcode,$市)=爆炸( ' - ',$文件名);

+0

感謝,因爲需要這工作完全吻合。謝謝大家的幫助。 – Mike

1

使用PHP explode

$pieces = explode('-', 'species_name-date-locationcode-city'); 
$name = $pieces[0]; 
$data = $pieces[1]; 
$code = $pieces[2]; 
$city = $pieces[3]; 
1
<?php 
$myvar = 'common_daisy-20130731-ABCD-Dallas'; 
$tab = explode ('-', $myvar); 
$speciesname = $tab[0]; 
$date = $tab[1]; 
$locationcode = $tab[2]; 
$city = $tab[3]; 
?> 
1

可以發生爆炸分隔符的字符串,然後分配給變量

$filename = 'species_name-date-locationcode-city'; 
$array = explode('-', $filename); 
$speciesname = $array[0]; 
$date = $array[1]; 
$locationcode = $array[2]; 
$city = $array[3];