官术网_书友最值得收藏!

7.7 字符串與數組的轉換

視頻講解:光盤\TM\lx\7\07 字符串與數組的轉換.mp4

字符串與數組的轉換在程序開發過程中經常使用,主要使用explode()函數和implode()函數實現,下面分別進行詳細講解。

1.使用explode()函數將字符串轉換成數組

explode()函數將字符串依指定的字符串或字符separator切開。

語法格式如下:

        array explode(string separator, string string, [int limit])

返回由字符串組成的數組,每個元素都是string的一個子串,它們被字符串separator作為邊界點分隔出來。如果設置了limit參數,則返回的數組包含最多limit個元素,而最后那個元素將包含string的剩余部分;如果separator為空字符串(""), explode()函數將返回false;如果separator所包含的值在string中找不到,那么explode()函數將返回包含string單個元素的數組;如果參數limit是負數,則返回除了最后的-limit個元素外的所有元素。

【例7.8】本例使用explode()函數將“時裝、休閑、職業裝”字符串按照“、”進行分隔,實例代碼如下:(實例位置:光盤\TM\sl\7\8)

        <?php
          $str="時裝、休閑、職業裝";                     //定義一個字符串
          $strs=explode("、", $str);                    //應用explode()函數將字符串轉換成數組
          print r($strs);                               //輸出數組元素
        ?>

結果為:Array ( [0] => 時裝 [1] => 休閑 [2] => 職業裝 )

【例7.9】在開發一個投票管理系統時,經常需要在后臺添加投票選項到投票系統,以作為投票的內容。下面使用explode()函數對添加的投票選項通過“*”進行區分,然后使用while循環語句分別在頁面中輸出添加的投票選項。(實例位置:光盤\TM\sl\7\9)

具體開發步驟如下:

(1)利用開發工具(如Dreamweaver)新建一個PHP動態頁,保存為index.php。

(2)使用HTML標記設計頁面。首先建立投票表單,用于實現添加投票選項,然后使用each()函數提取全局數組$_POST中的內容,并最終使用while循環輸出投票選項內容。代碼如下:

        <! --  定義添加投票表單------------------------>
        <form name="form1" method="post" action="">
          <table width="400" border="1" cellpadding="0" cellspacing="1" bordercolor="#FF9900" bgcolor="#CCFF66">
              <tr align="center">
                <td width="98" height="120">添加投票選項:</td>
                <td width="223" height="120"><p>
                    <textarea name="content" cols="30" rows="5" id="content"></textarea>
                    <br>
                    <span class="style1">注意:每個選項間用*分隔</span></p></td>
                <td width="61" height="120"><input type="Submit" name="Submit" value="提交"></td>
              </tr>
          </table>
        </form>

(3)添加一個表格,然后在表格的單元格中添加以下代碼,用來輸出添加的投票選項。

        <?php
          if(isset($_POST['Submit']) && $_POST['Submit']! =""){
            $content=$_POST['content'];
            $data=explode("*", $content);
            while(list($name, $value)=each($data)){
                echo '<input type="checkbox" name="checkbox" value="checkbox">';
                echo $value."\n";
            }
          }
        ?>

(4)在IE瀏覽器中輸入地址,按Enter鍵,輸入投票選項的內容,各選項間用“*”進行分隔,單擊“提交”按鈕,運行結果如圖7.3所示。

圖7.3 在投票系統的后臺管理中使用explode()函數

2.使用implode()函數將數組轉換成一個新字符串

implode()函數用于將數組的內容組合成一個字符串。

語法格式如下:

        string implode(string glue, array pieces)

其中,glue是字符串類型,指要傳入的分隔符;pieces是數組類型,指傳入的要合并元素的數組變量名稱。

【例7.10】使用implode()函數將數組中的內容以空格作分隔符進行連接,從而組合成一個新的字符串,實例代碼如下:(實例位置:光盤\TM\sl\7\10)

        <?php
          $str=array("明日", "編程詞典", "網址", "www.mrbccd.com", "服務電話", "0431-84972266");
          echo implode("", $str);                 //以空格作為分隔符將數組中的元素組合成一個新字符串
        ?>

結果為:明日 編程詞典 網址www.mrbccd.com 服務電話 0431-84972266

主站蜘蛛池模板: 江门市| 武山县| 阿鲁科尔沁旗| 鄱阳县| 四川省| 松潘县| 韶山市| 华安县| 咸阳市| 秭归县| 胶州市| 吕梁市| 兴仁县| 万安县| 阜新| 施秉县| 徐州市| 榆中县| 鲁山县| 连山| 巴东县| 宣威市| 尚义县| 临朐县| 家居| 海口市| 拉孜县| 曲阳县| 平舆县| 区。| 北流市| 婺源县| 水城县| 阳城县| 德清县| 旬邑县| 丹凤县| 始兴县| 瓦房店市| 左权县| 长治县|