Jump to content
Dr_Lion

Concatenar string em php

Recommended Posts

Dr_Lion

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.

Share this post


Link to post
Share on other sites
fil79

var 5 = var1.','.var2.','.var3.','.var4 ;

Edited by fil79

MCITP-MCTS-MCP

Share this post


Link to post
Share on other sites
Dr_Lion

var 5 = var1.','.var2.','.var3.','.var4 ;

Pois, isso foi o que eu pensei, e já tentei de várias formas e não funciona. :S

Share this post


Link to post
Share on other sites
Dr_Lion

<?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

Share this post


Link to post
Share on other sites
HappyHippyHippo

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

Share this post


Link to post
Share on other sites
Dr_Lion

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.. :P

(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

Share this post


Link to post
Share on other sites
Virneto

(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 | ...

Share this post


Link to post
Share on other sites
carvalho2707

coloco aqui a minha duvida, dr_lion,

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

isto dá-te a hora actual?

Share this post


Link to post
Share on other sites
HappyHippyHippo

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

Share this post


Link to post
Share on other sites
munkbozz

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

// 12:17:30
?>

Podes aplicar o formato que quiseres.

Edited by munkbozz

Share this post


Link to post
Share on other sites
HappyHippyHippo

<?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

Share this post


Link to post
Share on other sites

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.