2010-08-20 106 views
-3

我必須將大量文本分成兩個變量,顯示頁面的一個部分,然後繼續在另一個地方的剩餘字段。有任何想法嗎?如何使用PHP將字符串拆分爲2個變量?

編輯:

感謝您的輸入。當用戶通過FCKeditor輸入文本時,我沒有可用的分隔符。是否有可能獲得輸入文本的長度,插入一個特殊的字符,然後用作分隔符?它被呈現爲一個故事,一個頁面具有一定的高度,另一個頁面繼續故事,就像一本書。這裏的查詢是什麼樣子:

$query = "select * from tablename"; 
$result = mysql_query($query) or die(mysql_error()); 
$num_results = mysql_num_rows($result); 
if ($num_results !="0") 
{ 
    echo "<table class='style1'>"; 
    echo "<tr>"; 
    echo "<td>"; 
    for ($i=0;$i<$num_results;$i++) 
    { 
     $row = mysql_fetch_array($result); 
     $description = stripslashes($row['description']); 
     echo $description; 
    } 
    echo "</td>"; 
    echo "</tr>"; 
    echo "</table>"; 
} 
+3

什麼是拆分的標準? – 2010-08-20 21:03:03

+1

是否有一些分隔符可以分隔文本,或者一個變量是否必須有一定的長度?或者,如何計劃確定將文本分成哪些部分? – 2010-08-20 21:03:35

+1

請提供詳細信息,例如預期的示例輸入和輸出 – 2010-08-20 21:03:55

回答

1

根據具體的要求,無論是explode()substr()應該滿足您的需求。

0
$sql = mysql_query($query); 
$sql = mysql_fetch_array($sql); 

$data = explode($delimiter,$sql["field"]); 

echo $data[0]; 

... 

echo $data[1]; 

是這樣的嗎?

+0

你缺少用於$ data [0];'和'$ data [1];'的'$'符號,並且可能適合使用'explode($ delimiter,$ sql [「field」]] ,2);'以保證'$ data'中不超過2個元素......儘管從問題中很難判斷使用限制是否有用。 – 2010-08-21 11:12:07

+0

我編輯了它,但我很確定我輸入了它:\ 示例文本會很好,現在這只是一個猜測。 – 2010-08-21 11:54:14

0

你知道最多的文本是可以進入你的'書'的每個'頁面' - 例如500個字符?你可以做的是在500個字符限制之前的最後一個合適的點(例如最後一個空格或最後一個句點)中斷。

這將是相當簡單做了幾個標準的PHP字符串函數:

  • SUBSTR(取前500個字符)
  • strrpos(找到最後的空間/句號/什麼在這500個字符中)
相關問題