Não estou conseguindo comparar o ultimo elemento de meu arquivo .txt ao ler ele como um array, quero ler a ultima linha comparar se ela está vazia, se estiver quero então mudar o valor dessa linha.($file_lines[0]=="Online:" porque no arquivo .txt a primeira linha que ele contem está escrito "Online:".
Estou precisando fazer isso porque ao encerrar a session substituo o nome do usuário online no momento por um espaço vazio, e quando outro usuário entra na sala do chat quando alguém antes encerrou a sessão, fica um espaço vazio antes do nome dele na lista de usuários online, assim queria fazer essa comparação ao iniciar a session para não ter esse incomodo, daria para fazer de um jeito bem mais simples se existisse um comando como esse \r\n que usa para quebra uma linha só que o oposto que serviria para depois de substituir o nome do usuário pelo $substituir = ""; pular para linha de cima, algo assim.
Pergunta
dipode
Não estou conseguindo comparar o ultimo elemento de meu arquivo .txt ao ler ele como um array, quero ler a ultima linha comparar se ela está vazia, se estiver quero então mudar o valor dessa linha.($file_lines[0]=="Online:" porque no arquivo .txt a primeira linha que ele contem está escrito "Online:".
$online = "usuarios_online.txt";
$vazio = "";
$file_lines = file($online);
if($file_lines[count-1]== $vazio){
$file_lines[count-1] = "$_SESSION[nome] \r\n";
}else if($file_lines[0]=="Online:" || $file_lines[count-1]!= $vazio){
$fp = fopen($online, "a+");
$escreve = fwrite($fp,"$_SESSION[nome] \r\n");
fclose($fp);
}
Estou precisando fazer isso porque ao encerrar a session substituo o nome do usuário online no momento por um espaço vazio, e quando outro usuário entra na sala do chat quando alguém antes encerrou a sessão, fica um espaço vazio antes do nome dele na lista de usuários online, assim queria fazer essa comparação ao iniciar a session para não ter esse incomodo, daria para fazer de um jeito bem mais simples se existisse um comando como esse \r\n que usa para quebra uma linha só que o oposto que serviria para depois de substituir o nome do usuário pelo $substituir = ""; pular para linha de cima, algo assim.
$excluir_usuario = $_SESSION[nome];
$substituir = "";
$arquivo = "usuarios_online.txt";
$conteudo_arquivo = file_get_contents($arquivo);
$conteudoVazio = str_replace($excluir_usuario, $substituir, $conteudo_arquivo);
$gravar = fopen($arquivo, "w");
fwrite($gravar, "$conteudoVazio");
fclose($gravar);
session_destroy();
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.