Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

johnnypm

array_splice var

Recommended Posts

Estou iniciando em php e estou tentando entender como funciona as classes de php. Estou estudando o seguinte código retirado do romano chat (global.php) do phpbrasil:

-gostaria de saber qual a função do "var" no inicio do codigo?

-o que faz o comando "array_splice"? pois procurei no phpbrasil, no php.net e no imasters , mas nao consegui entender o que ele faz nestes scripts, se você puder me exclarecer eu agradeço, brigadao.

 

 

---------------------------------------------------------------

 

<?php

$input = array("vermelho", "verde", "azul", "amarelo");

array_splice($input, 2);

// $input será agora array("vermelho", "verde")

 

$input = array("vermelho", "verde", "azul", "amarelo");

array_splice($input, 1, -1);

// $input será agora array("vermelho", "amarelo")

 

$input = array("vermelho", "verde", "azul", "amarelo");

array_splice($input, 1, count($input), "laranja");

// $input será agora array("vermelho", "laranja")

 

$input = array("vermelho", "verde", "azul", "amarelo");

array_splice($input, -1, 1, array("preto", "marrom"));

// $input será agora array("vermelho", "verde", "azul", "preto", "marrom")

$input = array("vermelho", "verde", "azul", "amarelo");

array_splice($input, 3, 0, "roxo");

// A array $input agora é ("vermelho", "verde",

// "azul", "roxo", "amarelo");

 

?> ------------------------------------------------------------------

 

class chat{

var $users;

var $msgs;

var $perfil;

var $tmsgs;

var $timer;

 

function removeuser($nome){

$str=time()+60;

$str.="||||";

$str.=$this->perfil[$nome]." sai da sala|saida";

$this->addmsgs($str);

unset($this->users[$nome]);

unset($this->perfil[$nome]);

unset($this->tmsgs[$nome]);

}

 

function adduser($nome){

// verifica se a variavel nome do usuario ($this->users[$nome]) existe

if(!isset($this->users[$nome])){

// coloca o time dentro da variavel $str

$str=time()+60;

// coloca "||||" dentro da variavel $str

$str.="||||";

// coloca perfil do usuario ($this->perfil[$nome]) dentro da variavel $str

$str.=$this->perfil[$nome]." entra na sala|entra";

// manda

$this->addmsgs($str);

$this->users[$nome]=time()+60;

$this->tmsgs[$nome]=0;

}else{

$this->users[$nome]=time()+60;

}

}

 

function addmsgs($str){

array_splice($this->msgs,100,100,$str);

}

 

function atualiza(){

if(empty($this->timer)){

$this->timer=time()+120;

}//fim if

if($this->timer < time()){

$this->timer+=60;

$k=0;

for($i=0;$i < sizeof($this->msgs);$i++){

$pieces=explode("|",$this->msgs[$i]);

if($pieces[0] < time()){

$k++;

}

}

array_splice($this->msgs,0,$k);

$keys=array_keys($this->users);

for($i=0;$i < sizeof($keys);$i++){

if($this->users[$keys[$i]] < time()){

$this->removeuser($keys[$i]);

}

}

}//fim if

}

}

 

$file_name = 'chat.txt';

 

$resultado = ler_arquivo($file_name);

 

if(!isset($resultado["sala"])){

$resultado["sala"]=new chat;

$resultado["sala"]->msgs[0]="0||||";

}

 

 

 

valeu galera

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom...

o 'var' você usa definir as variáveis q você irá criar/usar numa classe.. do mesmo modo, se você quizer usar uma variável q jah foi definida antes tem q usar 'global'..

 

jah o array_splice.. serve pra remover itens de um array... no manual explica direitinho.. eh soh olhar os exemplos! array_splice

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.