字串函式庫的經典使用學習

宋霸霸發表於2024-07-06
<?php
 // 1.單引號定義字串
 // 2.雙引號定義字串
 // 3.定界符定義字串

 // 1.單引號定義字串
 // echo 'this is 'my' mother';
 echo 'this is \'my\' mother <br>';

 // 單引號不能解析轉義符\n 換行 \t 縮排
 echo 'this \n is a simple \t string<br>';
 $username = 'admin';
 echo '歡迎您,$username<br>';
 echo '<hr>';

 // 雙引號如此強大為何還要用單引號? 越健全封裝就越複雜

 // 雙引號定義字串
 // 雙引號能解析轉義符\n 換行 \t 縮排
 echo "this \n is a simple \t string<br>";
 
 $Omega ='蘇米';
 $Alpha = '沈晗';

 echo "喜歡$Alpha";
 echo "但 {$Alpha}es是 {$Omega}es的 嗚嗚嗚/(ㄒoㄒ)/~~ <br>";

 // 預定義常量 目錄分割符
 // echo DIRECTORY_SEPARATOR;

 // 魔術常量
 // echo __DIR__.'\\ 0805\\demo1.php';
 // require __DIR__.'\\..\\0805\\demo1.php' ;
 //  require 'D:\phpstudy_pro\WWW\songyirui\0805\demo1.php';

 echo __FILE__;
 echo __LINE__;
 
 //  定界符定義字串 解析轉義符 解析變數 比較適合輸出大量的多行的內部存在多個變數的PHP字串
 echo <<<UI
        <table border="1" cellspacing="0" bgColor="pink">
            <tr>
                <th>Omega<th><td>{$Omega}</td>
                <th>Alpha<th><td>{$Alpha}</td>
            </tr>
        </table>
   UI;



 
 



?>

  

<?php
$str = 'watch';
// echo $str[3];
// echo $str{3};//報錯

// $str{1} = 'w';
// echo $str;//Fatal error: Array and string offset access syntax with curly braces is no longer supported in D:\phpstudy_pro\WWW\songyirui\0809\demo2.php on line 6

$name = '張三';
// echo $name{0}.$name{1}.$name{2};//Fatal error: Array and string offset access syntax with curly braces is no longer supported in D:\phpstudy_pro\WWW\songyirui\0809\demo3.php on line 10

$name = '張三';  
echo substr($name, 0, 1) . substr($name, 1, 1) . substr($name, 2, 1); // 輸出 "張"

echo $name;//直接輸出整個字串 "張三" 

// // 生成顏色隨機  內容隨機  字數4位的驗證碼  (/(ㄒoㄒ)/~~花括號有毒)
// $codes =
// 'hjfdjikjhuikjjkjkmjkmrssodewsxcvbgfjcx,woeiruyEDJUGIRKEOL1234567890';
// // 獲取隨機索引
// // echo mt_rand(0,strlen($codes)-1);
// // echo $codes{mt_rand(0,strlen($codes)-1)};//Fatal error: Array and string offset access syntax with curly braces is no longer supported in D:\phpstudy_pro\WWW\songyirui\0809\demo2.php on line 22
// $code = '';
// for ($i=0; $i < 4; $i++){
//     $code .= $codes{mt_rand(0,strlen($codes)-1)};//Fatal error: Array and string offset access syntax with curly braces is no longer supported in D:\phpstudy_pro\WWW\songyirui\0809\demo2.php on line 25
// }

// echo $code;

// 生成顏色隨機  內容隨機  字數4位的驗證碼
$codes =
'hjfdjikjhuikjjkjkmjkmrssodewsxcvbgfjcx,woeiruyEDJUGIRKEOL1234567890';
// 獲取隨機索引
// echo mt_rand(0,strlen($codes)-1);
// echo $codes[mt_rand(0,strlen($codes)-1)];
$code = '';
for ($i=0; $i < 4; $i++){
    $code .= $codes[mt_rand(0,strlen($codes)-1)];
}

echo $code;

echo '<hr>';

// 生成顏色隨機  內容隨機  字數4位的驗證碼
$codes ='hjfdjikjhuikjjkjkmjkmrssodewsxcvbgfjcxwoeiruyEDJUGIRKEOL1234567890';

$code = '';
for ($i = 0; $i < 4; $i++){
    // 隨機顏色rgb([引數0-255])
    $code .= '<span style="color:rgb( '.mt_rand(0,255).','.mt_rand(0,255).','.mt_rand(0,255).')" > 
    '. $codes[mt_rand(0,strlen($codes)-1)]. '</span>' ;
}

echo $code;
echo '<hr>';

// strcmp($string1,$string2):比較兩個字串的大小  區分大小寫  驗證使用者密碼是否一致  一致返回0
if(strcmp('xixi','xixi') !==0)
{
    echo json_encode(['status'=>0,'msg'=>'兩次密碼須一致'],320);
}else{
    echo json_encode(['status'=>1,'msg'=>'密碼確認透過'],320);
}

echo '<hr>';
// strcasecmp($string1,$string2):忽略大小寫 比較字串的大小 驗證碼的驗證
echo strcasecmp('412D','412d');



// 

?>

  

<?php
// implode|join($delimiter,$array):以指定分割符將陣列中的鍵值連線成字串
// implode|join陣列轉字串
$course = ['html','css','js','vue','uniapp'];
echo implode(",",$course);

echo '<hr>';

// 字串轉陣列explode($delimiter,$string):將指定字串拆分成陣列
$res = explode(',','html,css,js,vue,uniapp');
print_r($res);

// 字串擷取 substr($string,$start[,$length]):擷取字串

// echo md5(rand());/
echo '<hr>';
$str = md5(rand());
echo $str;
echo '<hr>';
echo substr($str,0,4);
$color = '#'.substr($str,0,4);
?>
<P style="color:<?=$color?>">你好</P>


<?php
// 需求 限制使用者的使用者名稱首個字元必須是字母  不能是數字等
// ord($char)://得到指定字元的ASCII
echo ord('o');
$username = 'admin';
echo ucfirst($username).'<hr>';
echo ord ($username);

$username = '2dmin';
$username = ucfirst($username).'<hr>';//Admin
echo ord ($username);


if(ord($username)<65 ||ord($username)>90)
{
    echo'使用者首字母必須是字母';
}

//chr()根據ASCII得到指定的字元
echo chr(90);
?>

  

<?php
// 字串代替函式str_replace($search,$replace,$string):在指定字串中查詢另外一個字串,找到之後將其替換成指定字串
// echo DIRECTORY_SEPARATOR;
$path = "D:\phpstudy_pro\Extensions\php\php7.3.4nts";
echo str_replace('\\','/',$path);

echo str_replace('轉賬','--','你可以轉賬到我的支付寶或者轉賬到微信',$count);
echo '\'轉賬\'被替換了'.$count.'次';
$search = ['睡覺','起床','洗漱','做飯','學習','電影','漫畫'];
$flag = ['@@','%%','**','##','…………','__','$#'];
$news = '嘻嘻小茗昨天和姐姐睡覺睡到很早,所以今天起床,早早,洗漱做飯看電影,上班的路上看會漫畫';
echo str_replace($search,$flag,$news);



?>

  

<?php
// base64_encode()使用MIME base64對二進位制資料進行編碼 編碼只有晗{A-Z a-z 0-9 + =}
// 這64個字串 = 用於填充
// header('Content-type:image/jpeg');
$file = file_get_contents('1.jpg');
// echo $file;

$img_64 = base64_encode($file);
echo $img_64;


?>
<img src="data:image/jpeg;base64,<?=$img_64?>" alt="天仙">

  

相關文章