标签: php

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

这是什么?

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

为什么是这样?

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

我该怎么办?

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

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

列表

另外,请参阅

php oop debugging warnings

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

用PHP清理用户输入的最佳方法是什么?

是否有一个catchall函数适用于清理SQL注入和XSS攻击的用户输入,同时仍允许某些类型的html标记?

php security xss user-input sql-injection

1069
推荐指数
14
解决办法
50万
查看次数

如何按值排序多维数组?

如何通过"order"键的值对此数组进行排序?尽管这些值目前是连续的,但它们并不总是如此.

Array
(
    [0] => Array
        (
            [hashtag] => a7e87329b5eab8578f4f1098a152d6f4
            [title] => Flower
            [order] => 3
        )

    [1] => Array
        (
            [hashtag] => b24ce0cd392a5b0b8dedc66c25213594
            [title] => Free
            [order] => 2
        )

    [2] => Array
        (
            [hashtag] => e7d31fc0602fb2ede144d18cdffd816b
            [title] => Ready
            [order] => 1
        )
)
Run Code Online (Sandbox Code Playgroud)

php arrays sorting multidimensional-array

1058
推荐指数
11
解决办法
76万
查看次数

如何在30分钟后使PHP会话到期?

我需要让会话保持30分钟,然后将其销毁.

php cookies session

1017
推荐指数
11
解决办法
93万
查看次数

获取数组的第一个元素

我有一个数组:

array( 4 => 'apple', 7 => 'orange', 13 => 'plum' )

我想得到这个数组的第一个元素.预期结果:字符串 apple

一个要求:通过引用传递不能完成,因此array_shift不是一个好的解决方案.

我怎样才能做到这一点?

php arrays

1015
推荐指数
24
解决办法
132万
查看次数

1014
推荐指数
15
解决办法
55万
查看次数

什么是长轮询,Websockets,服务器发送事件(SSE)和Comet?

我曾尝试阅读一些文章,但我对这些概念还不是很清楚.

有人愿意尝试向我解释这些技术是什么:

  1. 长轮询
  2. 服务器发送的事件
  3. 的WebSockets
  4. 彗星

我每次遇到的一件事是,服务器保持连接打开并将数据推送到客户端.如何保持连接打开,客户端如何获取推送数据?(客户端如何使用数据,也许某些代码可能会有帮助?)

现在,我应该将其中哪一个用于实时应用.我一直听说很多关于websockets(有socket.io [一个node.js库]),但为什么不用PHP?

php comet long-polling websocket server-sent-events

1005
推荐指数
4
解决办法
17万
查看次数

获取PHP中的完整URL

我使用此代码获取完整的URL:

$actual_link = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
Run Code Online (Sandbox Code Playgroud)

问题是我在我.htaccess身上使用了一些掩码,所以我们在URL中看到的并不总是文件的真实路径.

我需要的是获取URL,URL中写的内容,仅此而已 - 完整的URL.

我需要了解它在Web浏览器的导航栏中的显示方式,而不是服务器上文件的真实路径.

php url

978
推荐指数
18
解决办法
273万
查看次数

public,private和protected之间有什么区别?

何时以及为什么我应该在类中使用public,privateprotected函数和变量?他们之间有什么区别?

例子:

// Public
public $variable;
public function doSomething() {
  // ...
}

// Private
private $variable;
private function doSomething() {
  // ...
}

// Protected
protected $variable;
protected function doSomething() {
  // ...
}
Run Code Online (Sandbox Code Playgroud)

php oop private protected public

951
推荐指数
13
解决办法
47万
查看次数

mysql_fetch_array()/ mysql_fetch_assoc()/ mysql_fetch_row()/ mysql_num_rows等...期望参数1是资源或结果

我试图从MySQL表中选择数据,但我收到以下错误消息之一:

mysql_fetch_array()期望参数1是资源,给定布尔值

要么

mysqli_fetch_array()期望参数1为mysqli_result,给定布尔值

要么

在布尔/非对象上调用成员函数fetch_array()

这是我的代码:

$username = $_POST['username'];
$password = $_POST['password'];

$result = mysql_query('SELECT * FROM Users WHERE UserName LIKE $username');

while($row = mysql_fetch_array($result)) {
    echo $row['FirstName'];
}
Run Code Online (Sandbox Code Playgroud)

这同样适用于代码

$result = mysqli_query($mysqli, 'SELECT ...');
// mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given
while( $row=mysqli_fetch_array($result) ) {
    ...
Run Code Online (Sandbox Code Playgroud)

$result = $mysqli->query($mysqli, 'SELECT ...');
// Call to a member function fetch_assoc() on a non-object
while( $row=$result->fetch_assoc($result) ) {
    ...
Run Code Online (Sandbox Code Playgroud)

$result = $pdo->query('SELECT ...', PDO::FETCH_ASSOC);
// Invalid …
Run Code Online (Sandbox Code Playgroud)

php mysql

938
推荐指数
29
解决办法
74万
查看次数