- PHP+MySQL+Dreamweaver動態網站開發從入門到精通(第3版)
- 環博文化
- 1154字
- 2019-10-29 10:45:42
2.2 動態輸出字符
在實際的網頁設計過程中,單使用echo()命令并不能滿足實際的應用,如需要輸出隨機的數字、控制字符串的大小寫及一些特殊的字符處理等,就可以通過調用相應的函數命令實現。
2.2.1 PHP函數的調用
要實現相應的字符控制就需要調用相應的函數命令,在PHP編程中調用相應的函數還是比較簡單的,如使用rand()函數來產生一個隨機數字(范圍是0~100)。
<?php
echo rand(0,100);
?>
刷新便可看到輸出結果的變化,rand()函數中的0和100為指定給rand()函數的參數,前面的0意味著最小可能出現的數值為零,100則意味著最大可能出現的數值為100,如圖2-3所示。很多函數都有必選或可選的參數。

圖2-3 輸出隨機值
2.2.2 截去字符串首尾
使用trim()函數可以返回字符串string首尾的空白字符去除后的字符串。
語法:string trim(string str);
返回值:字符串
函數種類:文本處理
在使用來自HTML表單的信息之前,一般都會對這些數據做一些整理。
<?php
//清理字符串中開始和結束位置的多余空格
$name="12356789";
$name=trim($name);
echo$name;
?>
運行的結果可以將字符串前后的空白去除。
2.2.3 格式化輸出字符
nl2br()函數可以將換行字符轉換成HTML換行的<br>指令。
語法:string nl2br(string string);
返回值:字符串
函數種類:文本處理
舉例如下:
<?php
$str="今天的天氣特別好,心情也不錯
,決定去學校足球場,好好地踢一場球。";
echo$str;
echo"<br/>";
echo nl2br($str);
?>
輸出的結果如圖2-4所示。

圖2-4 格式化輸出字符的結果
2.2.4 打印格式化輸出
PHP支持print()結構在實現echo功能的同時能返回值(True或False,是否成功),使用printf()可以實現更復雜的格式。
語法:int printf(string format,mixed[args]...);
返回值:整數
函數種類:文本處理
<?php
$num=12.8;
//將$num里的數值以字符串的形式輸出
printf("數值為:%s",$num);
echo"<br/>";
//轉換成為帶有兩位小數的浮點數
printf("數值為:%.2f",$num);
echo"<br/>";
//解釋為整數并作為二進制數輸出
printf("數值為:%b",$num);
echo"<br/>";
//打印%符號
printf("數值為:%%%s",$num);
?>
輸出結果如圖2-5所示。

圖2-5 打印格式化輸出結果
2.2.5 字母大小寫轉換
字母的大小寫轉換在PHP網頁轉換中經常用到,涉及的函數命令也有常用的幾個,如strtoupper()可以將字符串轉換成大寫字母,將每個單詞的第一個字母轉換成大寫可以使用ucwords(),將字符串的第一個字母轉換成大寫可以使用ucfirst(),將字符串轉換成小寫字母可以使用strtolower(),舉例如下。
<?php
$str="I like this game!";
//將字符串轉換成大寫字母
echo strtoupper($str)."<br/>";
//將字符串轉換成小寫字母
echo strtolower($str)."<br/>";
//將字符串的第一個字母轉換成大寫
echo ucfirst($str)."<br/>";
//將每個單詞的第一個字母轉換成大寫
echo ucwords($str);
?>
輸出的結果如圖2-6所示。

圖2-6 字母轉換大小寫結果
2.2.6 處理特殊的字符
有些字符對于MySQL是有特殊意義的,例如引號、反斜杠和NULL字符。如何正確處理這些字符?可以使用addslashes()函數和stripslashes()函數。

輸出的結果如圖2-7所示。

圖2-7 處理特殊的字符
- Web程序設計及應用
- Instant Testing with CasperJS
- GAE編程指南
- arc42 by Example
- vSphere High Performance Cookbook
- Learn Programming in Python with Cody Jackson
- SEO實戰密碼
- 鋒利的SQL(第2版)
- Mastering Linux Network Administration
- 區塊鏈技術與應用
- MySQL從入門到精通(軟件開發視頻大講堂)
- 基于ARM Cortex-M4F內核的MSP432 MCU開發實踐
- Java零基礎實戰
- Managing Microsoft Hybrid Clouds
- Visual Basic 程序設計實踐教程