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管理副本集(持续更新中)
许多维护工作不能在备份节点上完成 因为要写操作,也不能在主节点上进行,这就需要单机模式启动服务器, 是指重启成员服务器,让他成为一个单机运行的服务器,而不再是副本集中的一员(临时的) 在单机 ...
随机推荐
- 数据分析在web交互设计中的作用 页面跳出率 100% 原因分析
通过分析访问的路径,发现,访问者访问其他页面,直接跳出 页面跳出率 100% 说明: 连作者都发现的导航路径不清晰 对导航进行改版:清晰.明了
- Codeforces Beta Round #67 (Div. 2)C. Modified GCD
C. Modified GCD time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...
- Linux ALSA声卡驱动之六:ASoC架构中的Machine
前面一节的内容我们提到,ASoC被分为Machine.Platform和Codec三大部分,其中的Machine驱动负责Platform和Codec之间的耦合以及部分和设备或板子特定的代码,再次引用上 ...
- timeout in asp.net
Forms authentication timeout vs sessionState timeout They are different things. The Forms Authentica ...
- [NOIP2003普及组]麦森数(快速幂+高精度)
[NOIP2003普及组]麦森数(快速幂+高精度) Description 形如2^P-1的素数称为麦森数,这时P一定也是个素数.但反过来不一定,即如果P是个素数,2^P-1不一定也是素数.到1998 ...
- bzoj1833
http://www.lydsy.com/JudgeOnline/problem.php?id=1833 2.5个小时就花在这上面了... 水到200题了...然并卵,天天做水题有什么前途... #i ...
- Java - HashTable、HashMap和LinkedHashMap的区别
一般情况下,我们用的最多的是HashMap,在Map 中插入.删除和定位元素,HashMap 是最好的选择.但如果您要按自然顺序或自定义顺序遍历键,那么TreeMap会更好.如果需要输出的顺序和输入的 ...
- Codeforces 903G 巧妙的线段树
思路: 巧妙的线段树 想方法将网络流往数据结构方向转化 http://www.cnblogs.com/yyf0309/p/8724558.html //By SiriusRen #include &l ...
- Redux 基础概念
Redux is a predictable state container for JavaScript apps.,亦即 Redux 希望能提供一个可以预测的 state 管理容器,让开发者可以可 ...
- 挂载硬盘,提示 mount: unknown filesystem type 'LVM2_member'的解决方案
问题现象:由于重装linux,并且加了固态硬盘,直接将系统装在固态硬盘中.启动服务器的时候, 便看不到原来机械硬盘的挂载目录了,不知如何访问机械硬盘了.直接用命令 mount /dev/sda3 /s ...