字符串函数库的经典使用学习

news/2024/10/5 9:14:19/文章来源:https://www.cnblogs.com/QWD7986/p/18286992
<?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="天仙">

  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/739212.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解密Prompt系列33. LLM之图表理解任务-多模态篇

这一章我们聚焦多模态图表数据。先讨论下单纯使用prompt的情况下,图片和文字模态哪种表格模型理解的效果更好更好,再说下和表格相关的图表理解任务的微调方案上一章我们介绍了纯文本模态的表格理解任务,这一章我们聚焦多模态图表数据。先讨论下单纯使用prompt的情况下,图片…

用StabilityMatrix一键安装Stable Diffusion

Stable Diffusion是2022年发布的深度学习文字到图像生成模型,它既能免费使用,又能部署在本地端,又有非常多的模型可以直接套用,在使用体验上比Midjourney和DALL-E更加强大。Stable Diffusion使用的模型有下列几大类,对照模型网站 https://civitai.com 以形成更直观的认识:…

「代码随想录算法训练营」第四天 | 链表 part2

24.两两交换链表中的节点题目链接:https://leetcode.cn/problems/swap-nodes-in-pairs/ 题目难度:中等 文章讲解:https://programmercarl.com/0024.两两交换链表中的节点.html#算法公开课 视频讲解: https://www.bilibili.com/video/BV1YT411g7br 题目状态:有思路,但细节…

【0基础学爬虫】爬虫框架之 feapder 的使用

前言 大数据时代,各行各业对数据采集的需求日益增多,网络爬虫的运用也更为广泛,越来越多的人开始学习网络爬虫这项技术,K哥爬虫此前已经推出不少爬虫进阶、逆向相关文章,为实现从易到难全方位覆盖,特设【0基础学爬虫】专栏,帮助小白快速入门爬虫。 学习爬虫的过程中,一…

PTA题目集7-8的总结

PTA题目集7-8的总结 1.前言: 2.设计与分析: 3.踩坑心得: 4.改进意见: 5.总结 1.前言:PTA题目集7新增了互斥开关,窗帘,多并联电路和多串联电路。由于之前的输入信息中设备的引脚没有作用,所以我的正则表达式只用来提取设备的名字。而互斥开关有三个引脚,不同引脚的电压…

pycharm 动态绘图

_tkinter.TclError: Cant find a usable init.tcl in the following directories:解决办法: 1 打开报错地址所在文件 D:/Program Files/METACOMP/mlib/tcltk8/lib/tcl8.4/init.tcl: version conflict for package "Tcl": have 8.6.9, need exactly 8.4 2 修改init.t…

从零开始教你写一个MLIR Pass

笔者在去年写了一篇LLVM Pass的教程,现在从事MLIR的开发近1年了,写点教程回馈下社区。 MLIR(Multi-Level Intermediate Representation,多层中间表示)是LLVM之父(博士期间开发的LLVM)的Chris Lattner带领团队开发的编译器基础设施,其增强了 LLVM IR表达能力,而且其是关注P…

idm下载

获得百度网盘直链下载链接调用idm谷歌插件获得城盘直链下载链接调用idm谷歌插件 https://ctfile.qinlili.bid/当你的才华配不上你的野心,努力的时候到了!

Arthas进阶-笔记

《Arthas进阶》 学习目标类和类加载器相关的命令 monitor/watch/trace/stack等核心命令的使用 火焰图的生成 Arthas实战案例dump 作用 将已加载类的字节码文件保存到特定目录:logs/arthas/classdump/ 参数数名称 参数说明class-pattern 类名表达式匹配[c:] 类所属 ClassLoader…

域名、备案和HTTPS

有了域名后,可以方便其他人记住并访问12.域名、备案和HTTPS 有了域名后,可以方便其他人记住并访问,历史上不乏大企业花大价钱购买域名的:京东域名换成 JD.com,并且说是为了防止百度吸引流量,为什么? 唯品会买下域名 VIP.COM 或花费千万‍ 域名提供商 如果想要域名,得去…

陪玩app源码,加密算法中密钥生成和读取一览

陪玩app源码,加密算法中密钥生成和读取一览密钥生成与读取密码学随机数密码学随机数算法在安全场景中使用广泛,如:生成对称密钥、盐、iv等,因此相比普通的随机数算法(如线性同余),它需要更高强度的不可预测性,在Java中,使用SecureRandom来生成更安全的随机数,如下:pub…

陪玩小程序源码,不容错过的加密算法整理清单

陪玩小程序源码,不容错过的加密算法整理清单在开发陪玩小程序源码时,可采用的加密算法类型包含:对称加密对称加密算法,使用Cipher类即可,以广泛使用的AES为例,如下:public byte[] encrypt(byte[] data, Key key) {try {Cipher cipher = Cipher.getInstance("AES/CB…