php Illegal string offset 'name'问题及解决

目录
  • php Illegal string offset 'name'
    • 解决办法
  • thinkphp:Illegal string offset in 'xxxx'
    • 解决办法很简单

php Illegal string offset 'name'

上面代码可以输出值,但是

报错Warning: Illegal string offset 'name' in

原因是$person数组里面有空数组,空数组里没有name这个字段。

解决办法

是在 foreach 下面加个判断 if(is_array($value)),这样就搞定了。

   	$name = array();
    	foreach ($person as $value) {
    		if(is_array($value))
    		{
    			$name[] = $value['name'];
    		}

    	}

thinkphp:Illegal string offset in 'xxxx'

在使用thinkphp5遇到这个问题 特地记录下。。

在排除各种什么不能用空数组做索引等原因之后,猛然发现volist标签是输出二维数组的。

而find方法返回的是一维数组。。。(*  ̄︿ ̄),当然,你也可以所有都用select方法

解决办法很简单

一维数组直接{关联数组的索引}输出 {$bp.id}  二维数组再用volist

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • php像数组一样存取和修改字符串字符

    如获取第二个$str[1]或$str{1} ,不建议使用{},最好使用[]测试如下 复制代码 代码如下: //获取字符最后一个字符$str = 'phpddt.com';echo $str[strlen($str)-1]; //m//修改第一个字符$str = 'phpddt.com';$str[0] = 'a';  //ahpddt.com//方括号中的数字超出范围将会产生空白.  $str = 'phpddt.com';$str[100] = 'y';  //phpddt.com y//如果

  • PHP中多字节字符串操作实例详解

    目录 前言 字符串操作 字符串正则操作 字符串编码转换 HTTP 参数操作 其它属性查看 总结 前言 什么是多字节的字符串操作呢?其实不少的同学可能都已经使用过了,但我们还是要从最基础的问题说起. 一个字符占几个字节并不是我们表面上看到的那样.正常情况下,一个数字或英文以及英文符号都是占用一个字节的.但是这个世界的语言文字何其之多,特别是像中文.日文这样的文字,往往用一个字节装不下,这时候就需要多字节来解决了(多字节一般第一个字节是前导字节表示当前是什么语言文字,后面的是正被的字节编码).比如说

  • PHP iconv 函数转gb2312的bug解决方法

    iconv( "UTF-8", "gb2312//IGNORE" , $FormValues['a']) ignore的意思是忽略转换时的错误,发现iconv在转换字符"-"到gb2312时会出错,如果没有ignore参数,所有该字符后面的字符串都无法被保存. 另外mb_convert_encoding没有这个bug,所以最好的写法是: mb_convert_encoding($FormValues['a'], "gb2312"

  • php Illegal string offset 'name'问题及解决

    目录 php Illegal string offset 'name' 解决办法 thinkphp:Illegal string offset in 'xxxx' 解决办法很简单 php Illegal string offset 'name' 上面代码可以输出值,但是 报错Warning: Illegal string offset 'name' in 原因是$person数组里面有空数组,空数组里没有name这个字段. 解决办法 是在 foreach 下面加个判断 if(is_array($

  • Redis中的String类型及使用Redis解决订单秒杀超卖问题

    本系列将和大家分享Redis分布式缓存,本章主要简单介绍下Redis中的String类型,以及如何使用Redis解决订单秒杀超卖问题. Redis中5种数据结构之String类型:key-value的缓存,支持过期,value不超过512M. Redis是单线程的,比如SetAll & AppendToValue & GetValues & GetAndSetValue & IncrementValue & IncrementValueBy等等,这些看上去像是组合命

  • java 枚举类定义静态valueOf(java.lang.String)方法的问题及解决

    目录 问题的起因 猜测.分析 最终解决方案 枚举类Enum方法简介(valueof,value,ordinal) 我们应该注意到enum类型有如下的一些特征 了解了这些基本特性,我们来看看如何使用它们 问题的起因 起因来自于我对于java枚举类的无知. 我本来想定义这样一个枚举类: public enum MenuOptions { CHAT_ROOM("#1"), MENU("#0"), ERROR("#9999"); private Stri

  • java string的一些细节剖析

    首先说明这里指的是Java中的String,虽然我已经决定转战C/C++了,但是因为今天碰到一个问题,还是来看一下.String的定义如下: 复制代码 代码如下: public final class String { private final char value[]; // 保存的字符串 private final int offset; // 开始的位置 private final int count; // 字符数目 private int hash; // 缓存的hash值 ....

  • Java 分析并解决内存泄漏的实例

    这几天,一直在为Java的"内存泄露"问题纠结.Java应用程序占用的内存在不断的.有规律的上涨,最终超过了监控阈值.福尔摩 斯不得不出手了! 分析内存泄露的一般步骤 如果发现Java应用程序占用的内存出现了泄露的迹象,那么我们一般采用下面的步骤分析: 把Java应用程序使用的heap dump下来 使用Java heap分析工具,找出内存占用超出预期(一般是因为数量太多)的嫌疑对象 必要时,需要分析嫌疑对象和其他对象的引用关系. 查看程序的源代码,找出嫌疑对象数量过多的原因. dum

  • 解决kafka消息堆积及分区不均匀的问题

    目录 kafka消息堆积及分区不均匀的解决 1.先在kafka消息中创建 2.添加配置文件application.properties 3.创建kafka工厂 4.展示kafka消费者 kafka出现若干分区不消费的现象 定位过程 验证 解决方法 kafka消息堆积及分区不均匀的解决 我在环境中发现代码里面的kafka有所延迟,查看kafka消息发现堆积严重,经过检查发现是kafka消息分区不均匀造成的,消费速度过慢.这里由自己在虚拟机上演示相关问题,给大家提供相应问题的参考思路. 这篇文章有点

  • AngularJS ng-repeat数组有重复值的解决方法

    前言 大家都知道默认在ng-repeat的时候每一个item都要保证是唯一的,否则console就会打出error告诉你哪个key/value是重复的. 如: $scope.items = [ 'red', 'blue', 'yellow', 'white', 'blue' ]; 这个数组blue就重复了,html这么遍历它 <li ng-repeat="item in items">{{ item }}</li> 控制台就会抛出一个错误: 点击错误链接到Ang

  • C#中StringBuilder用法以及和String的区别分析

    String类有不可改变性.每次执行字符操作时,都会创建一个新的String对象. StringBuilder 类解决了对字符串进行重复修改的过程中创建大量对象的问题.初始化一个StringBuilder 之后,它会自动申请一个默认的StringBuilder 容量(默认值是16),这个容量是由Capacity来控制的.并且允许,我们根据需要来控制Capacity的大小,也可以通过Length来获取或设置StringBuilder 的长度. 举例: 用String类这么写 复制代码 代码如下:

  • 解决Python 爬虫URL中存在中文或特殊符号无法请求的问题

    这种问题,初学者应该都会遇到,分享给大家做个参考! from urllib.parse import quote import string #解决请求路径中含义中文或特殊字符 url_ = quote(new_url, safe=string.printable); 以上这篇解决Python 爬虫URL中存在中文或特殊符号无法请求的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

随机推荐