php - 如何创建多维数组?
问题描述
我正在观看一个具有这种代码和平的教程视频:
if ( isset($_POST['message']) ) {
if ( !isset ($_SESSION['chats']) ) $_SESSION['chats'] = Array();
$_SESSION['chats'] [] = array($_POST['message'], date(DATE_RFC2822));
header("Location: index.php");
return;
}
但我对这条线感到困惑:
$_SESSION['chats'] [] = array($_POST['message'], date(DATE_RFC2822));
那我不知道是什么意思= array($_POST['message'], date(DATE_RFC2822));
?是$_SESSION
二维数组吗?或者它只是一个有 2 个元素的一维数组?如果它是一维数组,我该如何写一个二维数组?
解决方案
如果您想知道代码的每个执行步骤会发生什么,最好为此使用调试器,例如 XDebug。您可以在代码中设置断点并逐行查看变量的状态。
另一种方法是在该行之后放置一个var_export($_SESSION);
并检查输出:
$_SESSION = array(
'chats' => array(
0 => array(
0 => 'gdf',
1 => 'Sat, 20 Apr 2019 21:08:26 +0100',
)
)
)
在您的情况下,超全局数组$_SESSION
包含一个插入键“聊天”的数组,该键包含另一个项目数组,即array($_POST['message'], date(DATE_RFC2822))
.
是的,$_SESSION
在您的示例中将是一个多维数组(3-D)。要在 PHP 中创建多维数组,需要输入另一个数组作为外部数组的元素。就像您在示例中所做的那样。
推荐阅读
- r - 如何在 R 中实现块作用域?
- vba - 电子邮件中有多个收件人,但通过循环发送邮件
- javascript - 强大的参数要求
- azure - 当前最新的 Azure Function 运行时版本是什么?
- scala - Spark Windowspec 滞后函数计算累积分数
- python - 将字典和变量列表插入表中
- python - 如何在 tkinter python 中保存从条目小部件输入的数据
- android - 我想从 on-create 方法连续运行这个翻转硬币动画。怎么做
- jquery - 使用 jQuery 将图像适合表格单元格
- c++ - 我们可以在标准容器中使用 std::auto_ptr<> 吗?是的,但使用移动语义