2013-06-02 54 views
1

我想讀取特定字符後的某些文本,然後檢索數據。我能夠做到這一點,但我希望能夠用'#'分隔數據,以便將其分開。我可以對此進行處理,但問題是在某些部分存在空間而不是標籤。使用PHP讀取特定字符後的文本

我試過使用$info = explode(' = ', rtrim($file, '#'));但這不起作用。我也嘗試了一些其他解決方案也沒有奏效。

這是我的代碼:

$file = file_get_contents('LauncherInfo.txt'); 
$info = explode(' = ', $file); 

echo $info[0].'#'.$info[1].'#'.$info[2].'#'.$info[3].'#'.$info[4]; 

這是我的輸出與該代碼得到。

IP#127.0.0.1 EXE#Client.exe PORT#8080 TITLE#Launcher 

但我希望它是這樣的:

IP#127.0.0.1#EXE#Client.exe#PORT#8080#TITLE#Launcher 

而且這是我的txt文件:

IP = 127.0.0.1 
EXE = Client.exe 
PORT = 8080 
TITLE = Launcher 

感謝您的閱讀,我感謝幫助。

回答

1
$file=file('LauncherInfo.txt'); 

foreach ($file as $line) { 

$line=str_replace(' = ','#',$line); 
$line=preg_replace('%\r\n%','#',$line); 

echo $line; 

} 
+0

哦,我看到你在那裏做了什麼。這很聰明,正是我所期待的。謝謝。 –

0

我想你可以只使用str_replace功能

$str = 'IP#127.0.0.1 EXE#Client.exe PORT#8080 TITLE#Launcher'; 

echo str_replace(' ', '#', $str); 

這將輸出

IP#127.0.0.1#EXE#Client.exe#PORT#8080#TITLE#Launcher 

Live sample

+0

是的,這是可能的,但我希望能夠從文本文件中讀取它。如果我想通常這樣做,我想我可以迴應輸出的結果。 –

+0

@farbodD請檢查我的實況樣本,它實際上是從文件收費相同的東西 – Fabio

+0

哦,我看到你改變了它。但是,那不需要我在原始文本文件中寫入任何東西之後就有空間。 –

1

用戶TRIM()函數刪除右邊的空格,左,

echo trim($info[0]).'#'.trim($info[1]).'#'.trim($info[2]).'#'.trim($info[3]).'#'.trim($info[4]); 
+0

這似乎並不奏效。 –

相關問題