数字、浮点、布尔型、字符串和数组(php教程一)

比如语句:

 代码如下 复制代码
$fa=3.14;

字符串和数组是引用类型,也就是说他们作为地址放在栈里,当重新赋值时,栈里的地址改变方向,原来的指向变没或给回收了,英文:string、array。

比如:$str=”字符串”;$arr=array(“a”=>”数”,”b”=>”组”);// array()是一个数组赋值函数,这样的函数php有一千多个,一般常用的不到200个,我觉得。

字符串操作:

实例2:字符串合并、相加
复制代码 代码如下:

 代码如下 复制代码
<?php
$str = 1;
echo $str .= ""; //数字转化为字符串再合并,结果:"1"。
echo "<br>";
echo $str += "1元"; //字符串转化为数字再相加,如"1xxx"转化为数字1,结果: 2。
echo "<br>";
?>

实例3:字符串改变大小写
复制代码 代码如下:

 代码如下 复制代码
<?php
$str="12345abc";
echo strtolower($str);//变小写,结果:"12345abc"。
echo "<br>";
echo strtoupper($str);//变小写,结果:"12345abc"。
echo "<br>";
?>

实例4:字符串长度、截取子字符串(中英文)
复制代码 代码如下:

 代码如下 复制代码
<?php
$str = "字符串2";
echo mb_strlen($str, "utf-8"); //返回字符串长度的函数,第二个参数是编码,由于页面用utf-8编码,所以为这样。如果省去,返回内存占用的字节数(ascii),即10。结果4
echo "<br>";
echo mb_substr($str, 1, 2, "utf-8"); //返回字符截取,1为从”符”地址开始截取,2为截取2个"utf-8"编码的字符,结果:“符串”。
echo "<br>";
/**
* 知识点:现在开始接触函数了,每个函数都有()作为堆栈调用,()里面放0个或多个参数,可以自定义可以有默认值。而关键字比如echo是没有()的。
* 很多书用gb2312编码,取长度和子串时很麻烦。下面给大家参考一下不用上面的mb中文字符串扩展库实现原理:
*/
function my_mb_strlen($str, $code = "utf-8") // 定义一个新函数,$str是必须传入的参数。
{$num= 0;
if ($code == "utf-8")
{
$str = iconv("utf-8", "gb2312", $str); //转化为gb2312编码,ord函数返回对应的ascii值判断每个字节该中文字符是否结束。
for($i = 0;$i < strlen($str);$i++) // 在此strlen($str)返回内存占用的字节数相当于mb_strlen($str)
{
if (ord($str[$i]) > 0xa0)$i++; //$str[$i]对应内存的i字节。如果直接用utf-8判断会复杂些,因为编码的多样性utf-8是网页常用编码,utf-16(unicode)是windows编码。
$num++;
}
}
else
{
$num = "编码未实现";
} //有兴趣的自己查资料吧
return $num;
}
echo my_mb_strlen($str) . ";" . my_mb_strlen($str, "gb2312") . "<br>"; //该页编码用utf-8,你却说传入的字符串3是gb2312,就算函数实现了也无法正确的。
?>

实例5:子字符串查找、替换

复制代码 代码如下:

 代码如下 复制代码
<?php
$str = "字符串4";
echo mb_strpos($str, '串4', 0, "utf-8"); //查找从0开始找到的第一个子字符串位置,结果:2。如果查找不到,返回空(="");如果最后两个参数不要,返回6。
echo "<br>";
echo mb_strstr($str, '串', 0, "utf-8"); //截取从0开始找到的第一个子字符串至结尾,结果:"串4"。如果查找不到,返回空(="");如果最后两个参数不要,返回相同=strstr($str,'串')。
echo "<br>";
echo str_replace("4", "不是4", $str) ; //字符串替换,结果: "字符串不是4"。
echo "<br>";
?>

实例6:子字符串去空、html转义
复制代码 代码如下:

 代码如下 复制代码
<?php
$str=" 字符串5 ";
echo $str=trim($str);//去除两边空格,结果:"字符串5"。
echo "<br>";
echo "color="red"";//手工转义里面的'、"、,使之存储到内存,结果"color="red""
echo "<br>";
$str="<br>123";
echo htmlentities($str) ; //字符串转义<>&'"避免和html标识冲突,使之能在html浏览器端显示出来,结果:"<br>123"。
echo "<br>";
?>

 

时间: 2024-10-24 04:13:37

数字、浮点、布尔型、字符串和数组(php教程一)的相关文章

《PHP编程最快明白》第二讲 数字、浮点、布尔型、字符串和数组

数字.浮点.布尔型是值类型,英文:int.float.bool,这样你知道他们怎么用了. 比如语句:$fa=3.14; 字符串和数组是引用类型,也就是说他们作为地址放在栈里,当重新赋值时,栈里的地址改变方向,原来的指向变没或给回收了,英文:string.array. 比如:$str="字符串";$arr=array("a"=>"数","b"=>"组");// array()是一个数组赋值函数,这

《Python数据分析》一2.10 用布尔型变量索引NumPy数组

2.10 用布尔型变量索引NumPy数组 布尔型索引是指根据布尔型数组来索引元素的方法,属于花式索引系列.因为布尔型索引是花式索引的一个分类,所以它们的使用方法基本相同. 下面用代码(详见本书代码包中的boolean_indexing.py文件)具体演示其使用方法: import scipy.misc import matplotlib.pyplot as plt import numpy as np lena = scipy.misc.lena() def get_indices(size):

Java:将字符串中的数字转换成整型

在C语言中,将字符串中的数字转换为整型的方法是是利用atoi这个函数.在Java中,我们可以利用parseInt方法来实现,具体代码如下: public class HelloWorld { public static void main(String[] args){ String str = "12345"; int c = Integer.parseInt(str); //将字符串转换为整型数 int a = c + 100 ; System.out.println(a); }

Javascript 布尔型分析_基础知识

本来我以为js的布尔型转换跟java一样,毕竟大家同一个祖宗嘛,以下是我的写法. function foo() { var temp = Boolean.valueOf('<%=javaBoolean%>'); alert(temp == false); } java变量javaBoolean是一个字符串,它的值是"false",本来我以为肯定输出true,但结果却false,真是郁闷至极. 刚刚查了一下<javascript权威指南>,才茅塞顿开.原来是这样的

javascript-string字符串转换为数组。。

问题描述 string字符串转换为数组.. 我想要这个格式 var a={{""total"":2list"":[{""id""...t:1026px;top:308px;""}]}}现在后台返回一个数据,我用sring接收string b="{""total"":2list"":[{""id&qu

编写一个方法,返回一个double型二维数组

问题描述 编写一个方法,返回一个double型二维数组,数组中的元素能过解析字符串参数获得.如字符参数:"1,2;3,4,5;6,7,8"写出对应的数组我编了,可是调不出来帮帮我!!!publicclassArr{publicstaticvoidmain(String[]args){Strings="1,2;3,4,5;6,7,8";double[][]ss=d(s);for(inti=0;i<ss.length;i++){for(intj=0;j<ss

PL/SQL 如何输出布尔型

    布尔类型是PL/SQL数据类型的一种,能存储逻辑值TRUE.FALSE.只有逻辑操作符才允许应用在布尔变量上.数据库 SQL 类型并不支持布尔类型,只有PL/SQL才支持.所以不能往数据库中插入或从数据库中检索出布尔类型的值.下面描述了布尔型的声明.赋值以及如何输出布尔型. 1.布尔型的声明与赋值 PL/SQL提供的两个表示布尔值的直接量为TRUE和FALSE.这些值不是字符串,我们也不用加引号. 可以直接用布尔直接量给布尔类型变量赋值. --声明与赋值示例 DECLARE is_boo

c语言-c 语言 字符串和 数组

问题描述 c 语言 字符串和 数组 char * a = "abc"; char a[4] = "abc"; 以上有什么区别和联系 解决方案 char * a = "abc"; 其实是 char 一个你看不见的变量[] = "abc"; char *a = 一个你看不见的变量; 解决方案二: 前者是一个字符指针,定义时仅分配了指针变量的空间,该指针指向一个字符串常量"abc"的首地址,a可修改(可做左值)但

[华为机试练习题]12.整型字符串排序

题目 给定字符串内有很多正整数,要求对这些正整数进行排序,然后返回排序后指定位置的正整数 排序要求:按照每个正整数的后三位数字组成的整数进行从小到大排序 1)如果不足三位,则按照实际位数组成的整数进行比较 2)如果相等,则按照输入字符串中的原始顺序排序 说明(以下内容考生无须检查,调用者保证): 1) 字符串以'\0'结尾,仅包含数字.空格 2) 字符串内正整数之间以单个空格分隔,字符串首尾没有空格 3) 正整数格式为十进制,大小:1~1000000,正整数的数字非零开始 示例: 如字符串内容