Jump to content

Concatenar string em php


Recommended Posts

Posted

Já estou a dar em maluco, já tentei algumas formas, e tudo o que meta mais que duas variáveis concatenadas, não funciona.. há alguma forma de fazer isto? é que simceramente o computador já esteve mais longe de voar janela fora.

tenho as seguintes variáveis:

var1= "123";

var2= "456";

var3= "789";

var4= "abc";

quero:

var 5 = "123,456,789,abc";

Agradecido pelas respostas.

Posted (edited)
<?php
//conteudo do ficheiro usersAppMC em linux, apenas a linha seguinte
//100000179152455,1380585600
$user_id = "100000179152455";
$jane2012 = "1325376000";
$julh2013 = "1372636800";
$mar2012 = "1330560000";
$novem25_2013 = "1385337600";
$segs_semn = "604800";
$usreg = fopen('usersAppMC', 'r');
$uid = 1;
$nlinha = 0;
$date = date_create();
echo date_timestamp_get($date);
while ( $uid != $user_id ) {
$lin = fgets($usreg);
$item = explode(",", $lin);
$uid = $item[0];
$dini = $item[1];
$nlinha = $nlinha +1;
}
fclose($usreg);
echo "fora do ciclo: ";
echo "$uid,";
echo "$dini";
echo " $nlinha";
if ($uid != $user_id)
$dini = $jane2012;
echo "$dini";
echo "<br> chegou aqui";
//ate aqui funciona, se descomento as proximas 5 linhas estoira
$idu = $userid.','.$dini.','.$date.','.$segs_semn;
echo $idu;
$fich = fopen("fitem", "w");
fwrite($fich, $idu);
fclose($fich);
?>

O código é isto, não percebo qual é o problema, mas atrofia-me bastante que isto deixe de funcionar por razões no mínimo idiotas 😞

Edited by Dr_Lion
Posted

se "estoira" é porque o problema não tem nada haver com a concatenação das string ... algo que se confirmaria se apresentasses a mensagem de erro que te é apresentada ou a última entrada nos logs do servidor

o problema será (quase de certeza) que não tens permissões de criar o ficheiro "fitem"

IRC : sim, é algo que ainda existe >> #p@p
Posted (edited)

Já descobri a falha, obrigado pelo tempo dispendido a todos.

Aqui fica a solução:

<?php
//conteudo do ficheiro usersAppMC em linux, apenas a linha seguinte
//100000179152455,1380585600
$user_id = "100000179152455";
$jane2012 = "1325376000";
$julh2013 = "1372636800";
$mar2012 = "1330560000";
$novem25_2013 = "1385337600";
$segs_semn = "604800";
$usreg = fopen('usersAppMC', 'r');
$uid = 1;
$nlinha = 0;
$date = date_create();
$dasse = date_timestamp_get($date);
echo $dasse;
while ( $uid != $user_id ) {
$lin = fgets($usreg);
$item = explode(",", $lin);
$uid = $item[0];
$dini = $item[1];
$nlinha = $nlinha +1;
}
fclose($usreg);
echo "fora do ciclo: ";
echo "$uid,";
echo "$dini";
echo " $nlinha";
if ($uid != $user_id) {
$dini = $jane2012;
}
echo "$dini";
echo "<br> chegou aqui";
$dinit = substr($dini,0,-1);

//ate aqui funciona, se descomento as proximas 5 linhas estoira
$idu = $user_id.','.$dinit.','.$dasse.','.$segs_semn;
echo $idu;
$fich = fopen("fitem", "w");
fwrite($fich, $idu);
fclose($fich);
?>

O problema estava no date_create e no date_timestamp_get, ao que parece o php e os seus tipos de dados... dão me cabo da cabeça, já me lembro porque perfiro tão mais o python.. 😛

(já agora, para meter um esquema de cores basta meter "code = php" e para manter as tabulações? continuam a desaparecer na mesma 😞 )

Edited by Dr_Lion
Posted

(já agora, para meter um esquema de cores basta meter "code = php" e para manter as tabulações? continuam a desaparecer na mesma 😞 )

fazes a indentação com espaços.

"Que inquieto desejo vos tortura, Seres elementares, força obscura? Em volta de que ideia gravitais?" >> Anthero de Quental

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

Linuxando.com | ...

Posted

coloco aqui a minha duvida, dr_lion,

$date = date_create();
$dasse = date_timestamp_get($date);

isto dá-te a hora actual?

date_create

cria um objecto do tipo DateTime do qual se não deres o primeiro parâmetro (a string com um tempo) irá criar o objecto já com a data actual

public DateTime::__construct() ([ string $time = "now" [, DateTimeZone $timezone = NULL ]] )

date_timestamp_get

esta função retorna o valor do objecto DateTime no formato UNIX timestamp (um número inteiro que representa o número de segundos que passaram desde 1970-1-1 00:00:00)

IRC : sim, é algo que ainda existe >> #p@p
Posted

<?php
$date = date('H:i:s');
echo $date;

// 12:17:30
?>

Podes aplicar o formato que quiseres.

não mistures text/string com objectos

enquanto que a função date é muito prática no que toca a fazer a apresentação de uma data, a manipulação de datas deverá ser feita através do objecto DateTime ...

IRC : sim, é algo que ainda existe >> #p@p

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.