`

[转]php中数组与字符串

阅读更多

原文地址:http://www.mirecle.com/2011/03/16/php-array-with-string.html

 

因为php的语法要求不严格,字符串也可以当数组使用,这样就存在一个问题:当使用非数字作为key访问字符串中的内容时,就可能会带来一些不一致的情况,如下面的代码

1 $hello = "hello" ;
2 var_dump( $hello [ 'abc' ]);
3 var_dump( $hello [ '0' ]);
4 var_dump( $hello [ '1abc' ]);
5 var_dump( $hello [ '12abc' ]);

结果:

'h'

'h'

'e'

''

输出的结果就不说了,简单运行一下就可以知道,我想原因是由intval这个东东引起的,时间关系,没有去确认zend的代码,不过下面代码的运行结果页说明了一些问题

1 var_dump( intval ( 'abc' ));
2 var_dump( intval ( '0' ));
3 var_dump( intval ( '1abc' ));
4 var_dump( intval ( '12abc' ));

这个东东,对code review或者测试时候是一个很有杀伤力的bug,如果一个函数设计的返回值不好,有时候返回数组,有时候返回字符串,在使用之前,就一定要先判断返回结果是否为数组,否则就会在这个bug上杯具

分享到:
评论

相关推荐

    PHP多维数组转字符串函数

    ### PHP多维数组转字符串函数 #### 概述 在PHP开发过程中,处理数组是非常常见的需求之一。有时候,我们可能需要将多维数组转换为字符串形式,以便于存储、传输或者进行其他操作。本文将详细介绍一个来自PLFrame ...

    PHP 数组和字符串互相转换实现方法.rar

    本文将深入探讨PHP中数组与字符串之间的转换方法。 一、数组转换为字符串 1. `implode()` 函数:`implode()`函数允许我们将数组元素连接成一个字符串,使用指定的分隔符。例如: ```php $array = ['apple', '...

    一个byte数组与字符串转化类库

    1.转换一个String字符串为byte数组 2.将字节数组转化为String类型的数据 3.转换一个int为byte数组 4.从字节数组中指定的位置读取一个Integer类型的数据 5.转换一个shor字符串为byte数组 6.从字节数组中指定的...

    PHP数组与字符串互相转换实例

    首先,我们来看如何将PHP数组转换成字符串。`implode()`函数是PHP中用于连接数组元素并返回一个字符串的关键函数。例如: ```php $array = array('lastname', 'email', 'phone'); $comma_separated = implode(",", ...

    一个byte数组与字符串转化类库.zip

    转换一个String字符串为byte数组 2.将字节数组转化为String类型的数据 3.转换一个int为byte数组 4.从字节数组中指定的位置读取一个Integer类型的数据 5.转换一个shor字符串为byte数组 ...

    php字符串与byte字节数组转化类.zip

    介绍php字符串与byte字节数组转化类,转换一个String字符串为byte数组,将字节数组转化为String类型的数据,转换一个int为byte数组,从字节数组中指定的位置读取一个Integer类型的数据,转换一个shor字符串为byte...

    php 函数 数组 字符串 课件基础讲解

    在PHP编程语言中,函数、数组和字符串是三个核心概念,对于任何初学者来说,理解和掌握这些基础知识都至关重要。这份“php 函数 数组 字符串 课件基础讲解”显然是为那些希望入门PHP编程的人设计的。让我们深入探讨...

    基于php常用函数总结(数组,字符串,时间,文件操作)

    本文将详细介绍PHP中数组操作、字符串处理、时间日期管理以及文件操作的常用函数。 数组操作是PHP编程中不可或缺的一部分,涉及到数据的集合和处理。其中,implode()函数能够将数组中的元素通过指定的分隔符连接成...

    PHP从数组中随机选取几个值组成新的字符串(输出字符串非数组)

    这个实现起来虽然不难,但是涉及到PHP中几个不常用的函数模块,对于很多PHP新手来说还确实是一个难题,今天就给大家分享一个实例,用4行代码就可以实现让PHP随机从数组中选取几个值,然后拼接成字符串并输出。...

    PHP实现多维数组转字符串和多维数组转一维数组的方法

    总结来说,PHP中处理多维数组转换为字符串或一维数组的方法是通过递归与迭代的方式进行的。使用递归方法能够处理多层嵌套数组,而迭代方法则适合将所有元素平铺开来。这些方法在实际开发中的应用场景十分广泛,掌握...

    php中将数组转成字符串并保存到数据库中的函数代码

    `string2array()`函数用于将一个由字符串表示的数组转换为实际的PHP数组。这个函数的工作原理是使用`eval()`函数来执行字符串形式的PHP代码,将字符串解析为数组。`eval()`函数可以执行一段字符串作为PHP代码,但...

    PHP CRC8算法-集成十六进制转byte数组与byte数组转十六进制

    由C代码翻译过来的PHP CRC8算法,内有十六进制转字节数组与字节数组转十六进制,内有十六进制转byte数组与byte数组转十六进制

    PHP开源链式代码封装、数组、字符串、验证

    下面我们将详细探讨PHP中的链式编码封装、数组处理、字符串操作以及验证技术。 1. 链式编码封装: 链式编码的核心是返回对象本身,以便可以继续调用其方法。以下是一个简单的例子,展示了如何创建一个支持链式调用...

    PHP使用数组依次替换字符串中匹配项

    本文主要探讨如何使用数组依次替换字符串中的匹配项,这在处理多个相似替换需求时非常有用。 首先,我们看一个例子,假设有一个SQL查询,其中包含需要替换的日期占位符: ```sql select * from table where ctime ...

    lua切割字符串为数组(split)

    lua字符串转数组,类似js里的split()和php里的explode()

    PHP获取数组表示的路径方法分析【数组转字符串】 <font color=red>原创</font>

    文章最后推荐了相关的专题,如《PHP数组(Array)操作技巧大全》、《PHP常用遍历算法与技巧总结》、《PHP字符串(string)用法总结》等,都是对PHP数组和字符串操作深入学习的好资源。同时,也提到了关于PHP的其他学习...

    php分割数据,数组,分割字符串

    php分割数据,数组,分割字符串循环输出 $array_x="1,15,8,100"; $new_arr = explode(",",$array_x); $length = sizeof($new_arr); for($i=0;$i&lt;$length;$i++){ if($i!=0){echo " ";} echo $new_arr[$i]; }?&gt;

    把十六进制的位串转化为byte数组

    在处理十六进制字符串转字节数组时,还需要注意大小端的问题。在某些系统中,数据的存储顺序有大端(高位字节在前)和小端(低位字节在前)之分,这在处理网络传输或者跨平台的数据交换时尤为重要。 总之,将十六...

Global site tag (gtag.js) - Google Analytics