相关疑难解决方法(0)

参考 - 这个错误在PHP中意味着什么?

这是什么?

这是关于编程PHP时可能遇到的警告,错误和通知的一些答案,并且不知道如何修复.这也是社区Wiki,因此邀请每个人参与添加和维护此列表.

为什么是这样?

Stack Overflow上经常弹出诸如"已发送标头""调用非对象成员"之类的问题.这些问题的根本原因总是一样的.因此,这些问题的答案通常会重复,然后显示OP在他/她的特定情况下要改变哪一行.这些答案不会为网站添加任何价值,因为它们仅适用于OP的特定代码.具有相同错误的其他用户不能轻易地从中读取解决方案,因为它们过于本地化.这很难过,因为一旦你理解了根本原因,修复错误是微不足道的.因此,该列表试图以一般的方式解释解决方案.

我该怎么办?

如果您的问题已被标记为重复,请在下面找到您的错误消息并将修复程序应用于您的代码.答案通常包含进一步调查的链接,以防单独的一般答案不清楚.

如果您想贡献,请添加您的"收藏"错误消息,警告或通知,每个答案一个,简短说明它意味着什么(即使它只是突出显示其手册页的术语),可能的解决方案或调试方法和现有问答的清单.此外,随时改善任何现有的答案.

列表

另外,请参阅

php oop debugging warnings

1071
推荐指数
35
解决办法
19万
查看次数

PHP在函数中访问全局变量

根据大多数编程语言范围规则,我可以访问在其中的函数外部定义的变量,但为什么这段代码不起作用?

<?php
$data = 'My data';

function menugen(){   
    echo "[".$data."]";
}

menugen();
?>
Run Code Online (Sandbox Code Playgroud)

[]输出.

php scope

73
推荐指数
5
解决办法
11万
查看次数

不区分大小写的数组搜索

我有这样一个数组:

$array = Array ( 0 => 'oooo',
                 1 => 'no',
                 2 => 'mmmm', 
                 3 => 'yes' ); 
Run Code Online (Sandbox Code Playgroud)

我想搜索"是"这个词.我知道array_search(),但我想匹配"是","是"和"是".

我怎样才能做到这一点?

php arrays

63
推荐指数
2
解决办法
4万
查看次数

在单个语句中创建和调用匿名函数

php闭包或匿名函数用于创建函数而不指定其名称.

是否可以像在JavaScript中那样分配标识符来调用它们?例如

(function(){
    echo('anonymous function');
})();
Run Code Online (Sandbox Code Playgroud)

use在定义匿名函数时构造的正确用法是什么?在具有私有属性可访问性的公共方法中,匿名函数的状态是什么?

$anon_func = 
function($my_param) use($this->object_property){ //use of $this is erroneous here
    echo('anonymous function');
};
Run Code Online (Sandbox Code Playgroud)

php closures

18
推荐指数
3
解决办法
9404
查看次数

对返回新数组的php数组进行排序

我正在寻找一种可靠的标准方法来数组进行排序,将有序(关联)数组作为返回值返回.

我读过的关于返回BOOLEAN值的所有PHP.net函数,或0-1.我需要的方法是这样的:

$some_mixed_array = array( 998, 6, 430 );
function custom_sort( $array )
{ 
  // Sort it
  // return sorted array
}

custom_sort( $some_mixed_array );

// returning: array( 6, 430, 998 )
Run Code Online (Sandbox Code Playgroud)

不需要处理字符串,只需INT-s.

php arrays sorting associative-array

8
推荐指数
2
解决办法
7783
查看次数

如何搜索具有多个搜索条件的多维数组?

我想在条件中使用两个值搜索多维数组中的键.

我知道如何使用单个搜索条件搜索多维数组:

$key = array_search($journee, array_column($data,'journee'));
Run Code Online (Sandbox Code Playgroud)

但不仅仅是那个.这是我的阵列设置:

Array
(
    [0] => Array
        (
            [pseudo] => titi
            [journee] => 11
            [pts] => 3
        )

    ...
    [10] => Array
        (
            [pseudo] => test
            [journee] => 10
            [pts] => 6
        )

    [11] => Array
        (
            [pseudo] => test
            [journee] => 11
            [pts] => 4
        )

)
Run Code Online (Sandbox Code Playgroud)

如果我只11输入array_searcharray_column输入密钥journee,它将返回0.

我也想添加pseudo搜索条件(键journeepseudo应搜索特定值).

我怎么做到这一点?

php arrays multidimensional-array

4
推荐指数
1
解决办法
4368
查看次数

Php - 从几天到几周/天

我将来有几天约会,但想知道它有多少个星期和几天.另外,注意到如果它不到一周,那么它只返回相同的数字.

这可能吗?

例如17天将是2周和3天

例如4天将是4天

php algorithm

2
推荐指数
1
解决办法
2150
查看次数

在 PHP7 中对直接调用的函数使用短表示法是否安全?

从 PHP7 开始,似乎可以像这样直接调用匿名函数:

(function () { echo 'Hello!'; })();
Run Code Online (Sandbox Code Playgroud)

我在一些开源代码库中偶然发现了这一点。我试图在 PHP 文档(包括变更日志和 RFC)中找到任何关于此的提示。似乎没有,似乎完全没有记录。

以这种方式调用函数是否安全,还是应该call_user_func();像过去那样使用?这是在某处记录的吗?

我知道这些问题和答案:

他们只是说它应该起作用以及它是如何起作用的。我知道这个。我的问题不是关于“如何”!这是关于这是否真的是一个官方的 PHP 功能,或者它是否只是“偶然”工作(因为它似乎没有记录)。

php

0
推荐指数
1
解决办法
51
查看次数