Php 如何将多个值保存到一个数组中并一起检索它们
我正在用PHP制作一个聊天室,基本上我不想使用任何数据库和表来存储和检索这个聊天室的数据。我所要做的就是创建一个发送的消息数组,然后以图形方式显示该数组的值。大概是这样的: 用户:Php 如何将多个值保存到一个数组中并一起检索它们,php,arrays,Php,Arrays,我正在用PHP制作一个聊天室,基本上我不想使用任何数据库和表来存储和检索这个聊天室的数据。我所要做的就是创建一个发送的消息数组,然后以图形方式显示该数组的值。大概是这样的: 用户: message 1 message 2 message 3 正如您所看到的,用户可以编写新消息,当他单击Send按钮时,必须创建一个数组并存储他在其中编写的消息 如果用户输入了新的内容并重新发送,它应该在保留以前的消息的同时也存储新的值 这样我就可以在聊天框中创建For循环并检索用户发送的所有消息
message 1
message 2
message 3
正如您所看到的,用户可以编写新消息,当他单击Send按钮时,必须创建一个数组并存储他在其中编写的消息
如果用户输入了新的内容并重新发送,它应该在保留以前的消息的同时也存储新的值
这样我就可以在聊天框中创建For循环并检索用户发送的所有消息
我尝试了以下代码:
if (isset($_POST['send'])){
$pm = $_POST['message'];
$bot_pms[] = $pm;
$sent = file_get_contents($website."/sendmessage?chat_id=$id&text=$pm");
print_r($bot_pms);
}
echo '
<div class="box-footer">
<form action="" method="post">
<div class="input-group">
<input type="text" name="message" placeholder="Write your direct message" class="form-control">
<span class="input-group-btn">
<input name="send" type="submit" class="btn btn-danger btn-flat"/></span>
</div>
</form>
</div>
';
以及:
$num3=计数($\u会话);
对于($z=0;$zJustsession_start();
,然后将您的消息存储在$\u session['messages']
您需要某种形式的持久存储,为什么不使用数据库呢?如果您希望聊天记录与会话记录一样长,使用Abracadver解决方案是一个不错的方法remains@AbraCadaver请检查我的编辑。@VikashKumar请检查我的编辑。简单地添加带有代码行的块引号并不能得到非常有用/详细的答案。另外,请考虑r对代码使用代码块,并且仅对引号使用块引号。
$num3 = count($bot_pms);
for($z=0;$z<$num3;$z++){
echo '<div class="direct-chat-text">';
echo $bot_pms[$z];
echo '</div>';
}
if (isset($_POST['send'])){
$_SESSION['messages'] = $_POST['message'];
$sent = file_get_contents($website."/sendmessage?chat_id=$id&text=$pm");
print_r($_SESSION);
}
$num3 = count($_SESSION);
for($z=0;$z<$num3;$z++){
echo '<div class="direct-chat-text">';
echo $_SESSION['messages'];
echo '</div>';
}
if (session_status() == PHP_SESSION_NONE) {
session_start();
$_SESSION['messages'] = array(); }
if(isset($_POST['send'])) {
array_push($_SESSION['messages'], $_POST['send']); }