<?php
echo "apple\rpear\napple\tbanana<br/>";
$best = "PHP";
$str1 = "I Like $best"; //雙引號的內容是經過PHP語法分析器解析過的 任何變量在雙引號中都會被轉換成它的值輸出
$str2 = 'I Like $best'; //單引號的內容都被當做普通字符串輸出
//在進行SQL查詢之前 所有的字符串都必須加上單引號 以避免可能的注入漏洞和SQL錯誤
echo $str1;
echo '<br/>';
echo $str2;
echo '<br/>';
//trim() 用於去掉收尾空格和特殊字符
$str3 = "\r\r(:@_@ 創圖書館編撰偉業 展軟件開發雄風 @_@:)";
echo trim($str3);
echo '<br/>';
echo trim($str3,"\r\r(:");
echo '<br/>';
//第二個是可選參數 指定要刪除的字符 如果不設置該參數 所有的可選字符都將被刪除 也可以在參數中提供要去除的特殊字符
//Itrim() 用於去除左邊的特殊字符和空格
//Rtrim() 用於去除右邊的特殊字符和空格
//手動轉義還原字符串數據
echo '\'PHP5從入門到精通\'<br/>';
//自動轉義還原字符串數據
//addslashes() 用來爲字符串str加上反斜槓線
//stripslashes() 用來將addslashes()轉義的字符串str恢復原樣
$str4 = "'PHP5從入門到精通'";
echo $str4.'<br/>';
$a = addslashes($str4);
echo $a.'<br/>';
$b = stripslashes($str4);
echo $b.'<br/>';
//所有數據在插入數據庫之前 有必要應用addslashes()進行轉義 以免特殊字符串未經轉義而插入數據庫時出現錯誤
//addcslashes() 在指定的字符前加入反斜線
//stripcslashes() 將addslashed()轉義的字符串還原
$c = "編程體驗網";
echo $c.'<br/>';
$a = addcslashes($c, "編程體驗網");
echo $a.'<br/>';
$b = stripcslashes($c);
echo $b.'<br/>';
//在緩存文件中 一般對緩存數據值採用addcslashes() 進行指定範圍的轉義
//獲取字符串的長度
echo strlen("編程體驗網hahahaha").'<br/>';
/*if(strlen($_POST['pwd'])<6)
echo "密碼長度不能小於6位";
else
echo "密碼長度合法!";*/
?>
<!--<form action="UNIT5.php" method="post">
<input type="password" name="pwd">
<input type="submit">
</form>-->
<?php
//截取字符串
//substr(string str,int start,[,int length])
//字符串 開始截取位置 (可選參數)指定截取個數
// 如果start爲負數 從末尾開始截取 如果length爲負數 截取到倒數第length個
echo substr("she is a well-read girl",0);
echo '<br/>';
echo substr("she is a well-read girl",4,14);
echo '<br/>';
echo substr("she is a well-read girl",-4,4);
echo '<br/>';
echo substr("she is a well-read girl",0,-4);
echo '<br/>';
//截取超長文本的部分字符串
$text="PHP(外文名:PHP: Hypertext Preprocessor,中文名:\"超文本預處理器\")是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點,利於學習,使用廣泛,主要適用於Web開發領域。PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。它可以比CGI或者Perl更快速地執行動態網頁。";
if(strlen($text)>40)
echo substr($text,0,40)."...<br/>";
else
echo $text;
/*使用substr()截取中文字符串時 如果截取的字符串是奇數 就會導致截取的中文字符出現亂碼
因爲一箇中文字符由兩個字節組成 所有substr()適用於對英文字符串的截取 如果想要對中文字符串進行截取
而且要避免亂碼 最好的方法就是用substr()編寫一個自定義函數*/
//比較字符串
//1.按字節進行比較 strcmp()區分大小寫 strcasecmp()不區分大小寫 相等返回0 前一個大返回正數 反之 負數
$str5="明日編程詞典";
$str6="啦啦啦啦啦啦";
$str7="mrsoft";
$str8="MRSOFT";
echo strcmp($str5,$str6).'<br/>';//1
echo strcmp($str5,$str7).'<br/>';//1
echo strcasecmp($str7,$str8).'<br/>';//0
//2.按自然排序法進行比較 strnatcmp() strnatcasecmp() 比較的是字符串中的數字部分 將字符串中的數字大小進行比較
$str5="str2.jpg";
$str6="str10.jpg";
echo strcmp($str5,$str6).'<br/>';//1 自然運算中2比10小 而在計算機序列中2比10大
echo strcmp($str7,$str8).'<br/>';//1
echo strnatcmp($str5,$str6).'<br/>';//-1
echo strnatcmp($str7,$str8).'<br/>';//1
//3.指定從源字符串的位置開始比較 strncmp(str1,str2,length);
$str5="I like php";
$str6="i am fine";
echo strncmp($str5,$str6,2).'<br/>';//-1 比較前兩個字符
//檢索字符串 strstr()查找關鍵字 substr_count()檢索字符串出現的次數
html代碼:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<form method="post" action="index.php" enctype="multipart/form-data">
<input type="hidden" name="action" value="upload"/>
<input type="file" name="u_file"/>
<input type="submit" value="上傳">
</form>
</body>
</html>
index.php代碼
if($_POST[action]=="upload"){ //判斷提交按鈕是否爲空
$file_path="./uploads\\"; //定義圖片在服務器上的存儲位置
$picture_name=$_FILES[u_file][name]; //獲取上傳圖片的名稱
$picture_name=strstr($picture_name,".");
if($picture_name!=".jpg"){
echo "<script>alert(\"圖片上傳格式不正確!\");</script>";
}
else if($_FILES[u_file][tmp_name]){ //文件被上傳後在服務端儲存的臨時文件名
move_uploaded_file($_FILES[u_file][tmp_name], $file_path.$_FILE[u_file][tmp_name]);
//執行圖片上傳
echo "圖片上傳成功!";
}
else
echo "圖片上傳失敗";
}
//使用substr_count()檢索字符串出現的次數
$str="明日編程詞典";
echo substr_count($str, "詞").'<br/>';
/*檢索字符串出現的次數一般常用於搜索引擎中 針對子串在字符串中出現的次數進行統計
使於用戶第一時間掌握子串在字符串中出現的次數*/
//替換字符串
//1.str_ireplace() 使用新字符串替換原始字符串中被指定要替換的字符串
//mixed str_ireplace(mixed search,mixed replace,mixed subject,[,int &count])
// 需要查找的字符串 替換的值 查找範圍 替換的次數
$strA="某某";
$strB="**";
$strC="某某公司是一家以...".'<br/>';
echo str_ireplace($strA, $strB, $strC);
//此函數在執行替換時不區分大小寫
//字符串替換技術最常用的就是在搜索引擎的關鍵字處理中 可以使用字符串替換技術獎搜索到的字符串的關鍵字替換顏色 如 查詢關鍵字描紅功能 使搜索結果便於用戶查看
$content="西安工業大學(英文名:Xi'an Technological University)位於歷史文化名城西安,是我國西北地區唯一一所以兵工爲特色,以工爲主,理、文、經、管、法協調發展的教學研究型、多科性和開放式的科學技術大學";
$str="西安工業大學";
echo str_ireplace($str, "<font color=\"#FF0000\">".$str."</font>", $content);
//2.substr_replace()
//String substr_replace(string str,string repl,int statr[,int length]);
// 原始字符串 新字符串 起始位置 替換長度
$str="用今日的辛勤工作,換明日的雙倍回報";
$repalce="百倍";
echo substr_replace($str, $replace, 26,4).'<br/>';
//格式化字符串
//number_format(float number[,int num_decimal_places,][string dec_seperator,string thousands_separator]);
//此函數可以有一個 兩個 四個參數 但不能是三個
//一個參數: 捨去小數點後面的值 且第三位數字會以,隔開
//兩個參數: 格式化到小數點後第num_decimal_places位 每三位數字會以,隔開
//四個參數: 格式化到小數點後第num_decimal_places位 dec_seperator用來代替小數點 thousands_separator用來代替第3位數字隔開的,
$number=1868.69;
echo number_format($number);
echo '<br/>';
echo number_format($number,2);
echo '<br/>';
$number=11886655.760055;
echo number_format($number,2,'.','.');
echo '<br/>';
//分割字符串explode()
//array explode(string separtor,string str[,int limit]);
//指定分割的標識符 字符串
//limit可選參數 返回的數組最多包含limit個元素 最後的元素將包含str剩下的部分
//如果爲負數 則返回除了最後的-limit個元素的所有元素
$str="PHP編程詞典@NET編程詞典@ASP編程詞典@JSP編程詞典";
$str_arr=explode("@", $str);
print_r($str_arr);
echo '<br/>';
//合成字符串
//implode()函數 將數組的內容合成一個新的字符串
$array=implode("@", $str_arr);
echo $array;
echo '<br/>';
?>
PHP字符串操作
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.