php基础教程 第三步 学习字符串及相关函数

字符串

上一节中我们学习了 php 变量、常量以及数据类型的一些概念。这一节中进一步学习数据类型中的字符串类型及其相关操作方法。

字符串指一串字符的合集。例如单个字符 a,单个字符 b,单个字符 c…这些 a、b、c 皆是字符;当把这些字符连起来,组合成 abc,则为字符串。

在php 语言中,新建一个变量的方式为 $a,并把这个变量赋值字符串可以写成 $a="abc"; 。在php 编程中,字符串的显著特点是带有双引号符或者单引号符。例如值 “abc”、“你好”、“a”、'a’都是字符串。

单引号与双引号之间的区别

可能看了以上的介绍,有部分初学者可能就会产生疑问“单引号和双引号有什么区别?”。

单引号和双引号的区别主要是在字符串中,是否可以加入变量,并在执行使解析变量样的字符串内容。主要查看以下代码:

<?php$txt='Li Hua ';echo $txt;
?>

代码释义
$txt='Li Hua ';:定义一个字符串变量 txt,值为 Li Hua
随后输出 $txt 的内容。
开启服务,使用浏览器访问结果如下:
在这里插入图片描述
运行结果直接输出来了 Li Hua 这个字符串。那么我们再看一个示例:

<?php$txt='Li Hua ';$txt_="Hello $txt";echo $txt_;
?>

$txt='Li Hua ';:定义txt变量,值为 Li Hua
$txt_="Hello $txt";:顶一个$txt_变量,值为 Hello $txt
以上代码中主要查看 Hello $txt,该字符串中,加入了一个字符串 $txt,并且最外层使用双引号。双引号会解析里面的 变量标记,在这里的是 $txt 变量。在输出的时候,字符串中的内容 $txt 会替换成 Li Hua 进行输出。
结果如下:

在这里插入图片描述
现在将 $txt_="Hello $txt"; 中的双引号更改为单引号试一下。

<?php$txt='Li Hua ';$txt_='Hello $txt';echo $txt_;
?>

结果如下:
在这里插入图片描述

字符串之间的连接

为了方便讲解,我们继续使用上面的例子进行修改。代码如下:

<?php$txt='Li Hua ';$txt_='Hello ';echo $txt_.$txt;
?>

以上代码是定义了两个变量,一个是 txt 一个是txt_ 和之前类似。之后使用echo 进行输出。但是需要注意的是,在使用echo 时,变量 $txt与变量 $txt_ 之间使用了小数点 . 进行连接。在输出时,这两个变量在输出时将会进行拼接。
结果如下:
在这里插入图片描述

字符串的长度

字符串变量是有长度值的,例如“abcdefg” 有7个字符,那么它的长度就是7,。在php 代码中可以使用 strlen 函数获取字符串,或者字符串变量的长度。示例如下:

<?php$txt='Li Hua ';$txt_='Hello ';echo strlen($txt_);
?>

结果如下:
在这里插入图片描述
再或者:

<?php$txt='Li Hua ';$txt_='Hello ';echo strlen('Hello ');
?>

字符串中查找指定字符所在的位置

在字符串中查找指定字符所在的位置可以使用 strpos 函数。如下代码:

<?php$txt='Li Hua ';$txt_='Hello';echo strpos($txt,'i');echo '-';echo strpos($txt_,'e');
?>

结果如下:
在这里插入图片描述
strpos函数是用来查找字符串所在位置,strpos函数可以传入2个参数,首先你要指定你要在哪个字符串中进行查找,随后还要告诉这个功能你需要查找什么值,所以以上示例写为如下:

echo strpos($txt,'i');

释义则为在$txt变量中查找字符 i 的位置,当然查找的内容不止一个字符 i,还可以查找连续的字符,也就是字符串所在的位置。

字符串替换

字符串替换可以使用 str_replace 函数,给函数指定你要替换什么内容,把内容替换为什么新值,并且在哪个字符串中进行替换。给与 str_replace 这些信息后,str_replace 会把字符串替换后的值返回。如下代码:

<?php$txt='Li Hua ';echo str_replace("Hua","Ming",$txt);
?>

以上原始字符串变量是$txt值为 Li Hua,使用 str_replace 函数,第一个位置指定填写需要替换掉的内容,第二个为替换后的新内容,第三个为原始的字符串或者字符串变量,这些指定的参数之间使用逗号进行相隔(一定是英文标点)。
结果如下:
在这里插入图片描述
php 系列教程持续更新中。

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

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

相关文章

冲刺第五天

今天做了什么&#xff1f; 今天学习了一下jQuery的元素获取&#xff0c;操作&#xff0c;attribute方法。 明天要做什么&#xff1f; 明天我准备调出程序算法进行测试。 遇到的困难&#xff1f; 还不懂jQuery的一些ui操作。 转载于:https://www.cnblogs.com/kt97458/p/5444148.…

ASP.NET CORE MVC使用SCD(独立部署)发布

简介Self-contained deployments (SCD), 生成一个可自己执行的文件以及所有依赖, 比如一个xxx.exe和一大堆dll, 直接运行即可, 不需要操作系统安装.net core 运行时步骤1、首先创建一个ASP.NET CORE MVC项目2、右击项目&#xff0c;点击编辑xxx.csproj&#xff0c;在下编辑<…

Mirantis OpenStack fuel web 安装 使用

2019独角兽企业重金招聘Python工程师标准>>> MirantisOpenStack-4.0.iso的下载地址&#xff1a;http://pan.baidu.com/s/1dDsuzXf。下载之后使用虚拟机或者物理机安装都可以&#xff0c;我使用的是vmware。需要把NAT的自动分配ip功能关闭 1、创建虚拟机 &#xff08…

word2vec需要去标点吗_word2vec学习笔记(应用篇)(金庸武侠)

写在前面本来是想写“实战篇”的&#xff0c;感觉实验语料库不大&#xff0c;就算是一个"应用篇"吧。选取了中文语料&#xff0c;主要简单介绍jieba分词的使用&#xff0c;以及Gemsim模块中Word2Vec的使用。word2vec的原理可以参考之前的文章&#xff1a;华夏狼崽&am…

ArcGIS实验教程——实验四:数字化属性数据的采集

ArcGIS实验视频教程合集:《ArcGIS实验教程从入门到精通》(附配套实验数据) 目录 一、实验内容 二、实验目的 三、实验数据 四、实验过程 【实验描述】 属性数据是GIS空格数据的重要组成部分。属性数据采集的基本操作由于地理实体(如建筑物) 位于地块之内成者与地…

[图] DevOps:提速从研发到交付流程

你的产品要让用户等多久&#xff1f;制定需求、排期开发、部署调试……这些流程都再跑一遍&#xff1f;传统产品发布流程长&#xff0c;多分支、环境不一、人工操作导致容易出错。面对这些传统发布难题&#xff0c;DevOps才是正确的出路。

php基础教程 第四步 学习运算符

在前面的章节中&#xff0c;以及了解了一些运算法&#xff0c;接下来再讲解一些常规运算法。 加运算法&#xff0c;用来使左右两边的值或表达式进行加法计算。例如有一个变量$a&#xff0c;一个变量$b&#xff0c;它们的值都为9&#xff0c;$a$b为99等于10.。输出使用echo&…

JavaScript基础学习(七)—BOM

BOM(Browser Object Model): 浏览器对象模型。提供了独立于内容而与浏览器窗口交互的对象&#xff0c;BOM主要用于管理窗口和窗口之间的通讯。 一、Navigator对象 navigator对象通常用于获取浏览器和操作系统的信息。 navigator对象是window对象的属性&#xff0c;中文是&…

ArcGIS实验教程——实验五:空间数据编辑

ArcGIS实验视频教程合集:《ArcGIS实验教程从入门到精通》(附配套实验数据) 【实验描述】 利用ArcGIS进行数字化之后,需要对采集的空间数据进行编辑,包括图形编辑和属性编辑。常用的编辑工具有:编辑折点、延续要素、打断线、连接线、自动完成面、剪切面,整形面等等。 一…

Spring初识

从上学期开始决心开始学习Spring&#xff0c;自己总是利用不好时间&#xff0c;到处瞎忙&#xff0c;结果浪费了好多时间。想着利用暑假的时间&#xff0c;专心看会儿书。最初我在Spring官网下载jar包的时候&#xff0c;忙会儿了半天愣是没找到下载的链接&#xff0c;瞬间觉得学…

batchsize和数据量设置比例_Keras - GPU ID 和显存占用设定步骤

初步尝试 Keras (基于 Tensorflow 后端)深度框架时, 发现其对于 GPU 的使用比较神奇, 默认竟然是全部占满显存, 1080Ti 跑个小分类问题, 就一下子满了. 而且是服务器上的两张 1080Ti.服务器上的多张 GPU 都占满, 有点浪费性能.因此, 需要类似于 Caffe 等框架的可以设定 GPU ID …

Blazor University (17)使用 RenderFragments 模板化组件

原文链接&#xff1a;https://blazor-university.com/templating-components-with-renderfragements/使用 RenderFragments 模板化组件源代码[1]到目前为止&#xff0c;我们已经创建了基于参数生成 100% 渲染输出的组件&#xff0c;但组件并不总是那么简单。有时我们需要创建将…

OpenGL® ES 3.0 Programming Guide - Book Website

OpenGL ES 3.0 Programming Guide - Book Website http://opengles-book.com sample codes in GitHub: https://github.com/danginsburg/opengles3-book/

ArcGIS实验教程——实验六:空间数据格式转换

ArcGIS实验视频教程合集:《ArcGIS实验教程从入门到精通》(附配套实验数据) 【实验描述】 空间数据从一个GIS平台跨到另一个GIS,必须经过格式转换,才能实现数据信息共享。本实验主要讲述空间数据矢栅互转、CAD(DWG)数据和Shapefile数据互转、栅格数据与ASCII文件之间的转换…

php基础教程 第五步 逻辑控制

逻辑判断 在开发项目时&#xff0c;竟然会出现逻辑控制。例如当用户输入“hello”时你需要自动回复“hello 欢迎”&#xff0c;当用户设置的定时时间到达时&#xff0c;你需要提醒用户时间已经结束&#xff1b;再举个例子&#xff0c;在玩网络游戏时&#xff0c;用户控制的角色…

在春意盎然的季节里初识GIT

Git 与 SVN 区别 GIT不仅仅是个版本控制系统&#xff0c;它也是个内容管理系统(CMS),工作管理系统等。 如果你是一个具有使用SVN背景的人&#xff0c;你需要做一定的思想转换&#xff0c;来适应GIT提供的一些概念和特征。 Git 与 SVN 区别点&#xff1a; 1、GIT是分布式的&…

WinForm混合Blazor(下)

有时&#xff0c;为了省事&#xff0c;我们也可以把窗体的控件注入到ServiceCollection中&#xff0c;在razor中订阅事件&#xff0c;这样就省了中间的桥梁&#xff0c;直接用控件当桥梁&#xff0c;下面以一个Button和Timer为例&#xff0c;来展示使用方式。本例是把Button和T…

ArcGIS实验教程——实验七:矢量数据空间校正(Spatial Adjustment)

ArcGIS实验视频教程合集:《ArcGIS实验教程从入门到精通》(附配套实验数据) 【实验描述】 本系列实验教程实验二讲述了栅格数据的数字化之前必须进行的操作--地理配准(地理配配准完整操作步骤),栅格地理配准和矢量空间校正都属于几何校正的内容,关于空间校正、地理配准、…

数据结构之冒泡排序

1 冒泡排序 冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来 算法过程如下: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素作同样的工作,从开始第一…

博图程序需要手动同步_贴吧求助帖博图实例单按钮控制灯的程序

接上一期在贴吧看见的求助帖(上图看得见水印)&#xff0c;因为没人回复&#xff0c;发帖的楼主好像删除了帖子。结果我抽时间用博图15.1&#xff0c;S71200做了一个&#xff0c;希望给需要帮助的新人能够起到作用&#xff0c;感觉有用的话可以关注一下我的公众号低压电工&#…