PHP开发错误锦集(持续更新)
1、trait 命名问题。
问题:trait 里定义的方法找不到
<?php
namespace app\controllers;
trait Example
{
public function example();
}
class Foo
{
use Example;
public function __construct()
{
$this->example();
}
}
PHP message: PHP Fatal error: Call to undefined method app\controllers\FooController::example() in path/controllers/FooController.php on line xx
解决:
trait 与 trait 里写的方法名称不可以相同。将上面的 trait 名称 Example 和 方法名 example() 改成不一样就可以了。
2、你的 opcache 真的关了吗?
在开发过程中,当你修改了代码,可实际上却输出的是改之前的内容。
检测是否关闭了 opcache。
var_dump(ini_get('opcache.enable'));
如果为 0,刚为关闭。
最近在用 laradock 这个 docker 环境,我在配置里改了 PHP_FPM_INSTALL_OPCACHE=false,并且也注释了 ./php-fpm/opcache.ini 里的所有东西,又重新编译了容器。但结果就是没关掉 opcache!
最后我发现,不能注释掉,感觉是opcache默认开启的。我把 ./php-fpm/php5.6.ini 和 ./php-fpm/opcache.ini 里明确指定了 opcache.enable = 0、opcache.enable_cli=0。这才解决。
一个字,烦~
3、关于空间名大小写问题
问题:在A类内实例化B类,并调用B类内的C方法,第一次运行,没用错误。这时修改C方法,重新运行,结果却是修改之前的代码。
解决:一开始怀疑有opcache缓存,所以关掉了opcache。结果仍解决不了。我的docker用的是 ubuntu,我把代码放到了 centos上,结果报错 - “A类实例化B类的时候,找不到B类”。可明明在ubuntu上没问题啊。一经检查,发现 B类空间名 中的路径与 B类文件路径存在不一致(主要是有一个字母的大小写不同,其它部分都一样)。
于是把B类的空间名的大小写与所在文件路径的路径(主要指B类所在文件的上级文件夹的命名)大小写统一,问题解决了。
不是缓存问题~
原文地址:https://segmentfault.com/a/1190000016109590
PHP开发错误锦集(持续更新)的更多相关文章
- DataStage 错误集(持续更新)
DataStage 错误集(持续更新) DataStage序列文章 DataStage 一.安装 DataStage 二.InfoSphere Information Server进程的启动和停止 D ...
- iOS开发系列文章(持续更新……)
iOS开发系列的文章,内容循序渐进,包含C语言.ObjC.iOS开发以及日后要写的游戏开发和Swift编程几部分内容.文章会持续更新,希望大家多多关注,如果文章对你有帮助请点赞支持,多谢! 为了方便大 ...
- C# net core程序调试错误集(持续更新)
目录 C#程序调试错误集 1.依赖注入错误System.InvalidOperationException: Unable to resolve service for type 'xxx' whil ...
- Android开发问题汇总(持续更新)
在Android开发中,总会有一些很小的问题.由于我们的不仔细,很容易忽略掉,从而导致在该问题上花费了很多的时间,造成工作进度的延迟. 为此,在这里做一下记录,避免再次浪费许多时间在这些问题上. 1. ...
- android开发常用组件【持续更新中。。。】
UI相关 图片 Android-Universal-Image-Loader:com.nostra13.universalimageloader:异步加载.缓存.显示图片 ImageLoader:co ...
- Python:常见错误集锦(持续更新ing)
初学Python,很容易与各种错误不断的遭遇.通过集锦,可以快速的找到错误的原因和解决方法. 1.IndentationError:expected an indented block 说明此处需要缩 ...
- Pandas 错误笔记(持续更新)
更新至2018.5.1 字典生成DataFrame 今天一个字典生成一个DataFrame,采用了以下形式,每一个value都是一个数(不是vector) df = pd.DataFrame({ 'i ...
- Linux 搭建Hadoop集群错误锦集
一.Hadoop集群配置好后,执行start-dfs.sh后报错,一堆permission denied zf sbin $ ./start-dfs.sh Starting namenodes on ...
- mongodb管理副本集(持续更新中)
许多维护工作不能在备份节点上完成 因为要写操作,也不能在主节点上进行,这就需要单机模式启动服务器, 是指重启成员服务器,让他成为一个单机运行的服务器,而不再是副本集中的一员(临时的) 在单机 ...
随机推荐
- PHP正则表达式-从文本中提取URL
1.从文本中提取URL的正则表达式 '/https?:\/\/[\w-.%#?\/\\\]+/i'
- 我的Android进阶之旅------>Android关于ImageSpan和SpannableString的初步了解
近期要实现一个类似QQ聊天输入框.在输入框中能够同一时候输入文字和表情图像的功能.例如以下图所看到的的效果: 为了实现这个效果.先去了解了一下ImageSpan和SpannableString的使用方 ...
- Uva 11151 - Longest Palindrome
A palindrome is a string that reads the same from the left as it does from the right. For example, I ...
- JAVA不让类实例化的方法
虽然java是面向对象编程,但也要尽可能避免创建不必要的对象,因为创建过多的对象不仅占用系统资源,而且多了很多不必要的创建销毁对象开销. 那么有哪些避免类创建对象的方法吗? 1,定义私有构造函数.这在 ...
- maven的pom.xml文件错误
来自:http://www.cnblogs.com/shihujiang/p/3492864.html
- [Apple开发者帐户帮助]九、参考(6)支持的功能(watchOS)
watchOS扩展可用的功能取决于您的程序成员身份. 注意:对于watchOS应用程序目标,可用的功能是应用程序组和后台模式,并且不依赖于您的程序成员身份. 能力 ADP 企业 Apple开发者 应用 ...
- Eclipse 添加 YAML插件
官网:https://github.com/oyse/yedit 离线版本:(链接: https://pan.baidu.com/s/1PJzkS1tI-VigZvfbYXUh9A 密码: gfep) ...
- 【洛谷4396/BZOJ3236】[AHOI2013]作业(莫队+分块/树状数组/线段树)
题目: 洛谷4396 BZOJ3236(权限) 这题似乎BZOJ上数据强一些? 分析: 这题真的是--一言难尽 发现题面里没说权值的范围,怕出锅就写了离散化.后来经过面向数据编程(以及膜神犇代码)知道 ...
- 338 Counting Bits Bit位计数
给定一个非负整数 num. 对于范围 0 ≤ i ≤ num 中的每个数字 i ,计算其二进制数中的1的数目并将它们作为数组返回.示例:比如给定 num = 5 ,应该返回 [0,1,1,2,1,2] ...
- Kafka的3节点集群详细启动步骤(Zookeeper是外装)
首先,声明,kafka集群是搭建在hadoop1.hadoop2和hadoop3机器上. kafka_2.10-0.8.1.1.tgz的1或3节点集群的下载.安装和配置(图文详细教程)绝对干货 如下分 ...