Ir para conteúdo

Arquivado

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

marcolino

Substitui qualquer string por valor fixo

Recommended Posts

Galera, é o seguinte, tenho a seguinte string:

 

<object width=\"425\" height=\"344\"><param name=\"movie\" value=\"http://www.youtube.com/watch?v=5GwC02lu2Mg&hl=pt-br&fs=1\"></param><param'>http://www.youtube.com/watch?v=5GwC02lu2Mg&hl=pt-br&fs=1\"></param><param name=\"allowFullScreen\" value=\"true\"></param><param name=\"allowscriptaccess\" value=\"always\"></param><embed src=\"http://www.youtube.com/watch?v=5GwC02lu2Mg&hl=pt-br&fs=1\" type=\"application/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"425\" height=\"344\"></embed></object>

Eu preciso localizar todos os valores de width e trocar por 288 e todos os valores de height trocar por 244. O problema é que nem sempre esses valores acima serão estes.

Eu tentei usar o seguinte código:

 

$codigo = str_replace("width=\"425\"", "width=\"288\"", $linha['arquivo']);
			$codigo = str_replace("height=\"344\"", "height=\"244\"", $codigo);
			$codigo = str_replace("\"","\\\"",$codigo);
			echo $codigo;

Mas como disse a valor de width não será sempre 425 e heigh nem sempre 344, nao tem alguma função tipo:

str_replace("height=\"???\"", "height=\"244\"", $codigo);

Compartilhar este post


Link para o post
Compartilhar em outros sites

porque não põe esse código dentro de uma função e define o width e height como variaveis...

tipo..

 

function embedVideo($width, $height) {
	 .... width = "$width" height="$height" ....
}

aí você chama a função e define os valores...

 

embedVideo(400, 300);

resolveria???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cassiano, não resolveria porque esse código do vídeo pode ser de qualquer site tipo Globo, Youtubue etc... O usuário só vai copiar o código EMBED do video o colar no campo para cadastrar no site. Entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode fazer assim:

 

<?php
$buscar = array('carro', 'moto', 'avião');
$trocar = 'veiculo';

$string = str_replace($buscar, $trocar, $string);
?>
Isso vai trocar qualquer ocorrencia de "carro", "moto" ou "avião" pela pavra "veiculo"... Ou você pode fazer assim:

 

<?php
$buscar = array('carro', 'moto', 'avião');
$trocar = array('veiculo A', 'veiculo B', 'veiculo C);

$string = str_replace($buscar, $trocar, $string);
?>
Isso vai trocar "carro" por "veiculo A", "moto" por "veiculo B" e etc.

 

Resolve?

 

:)

Compartilhar este post


Link para o post
Compartilhar em outros sites

TiuTalk, não resolve.

Por incrivel que pareça eu já tinha pensado nisso, porém se o usuário copiar o codigo do video(EMBED )de um site qualquer ele vai ter dimensoes diferentes da que eu deixar definida na array, entende!

 

Porque o campo do código do video vai ser livre, pode ser de qualquer site, tipo youtube, videolog, globo e o escambau... Tá fods.

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.