Buscar el caracter + en url con php

  • Autor Autor coni
  • Fecha de inicio Fecha de inicio
C

coni

Curioso
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Como puedo detectar si al final de la url hay un +

Insertar CODE, HTML o PHP:
localhost/index.php?id=hola[COLOR="#FF0000"]+[/COLOR]
 
sólo al final?
 
PHP:
if(strrpos($cadena, '+', -1)===false){
//no lo encontró
}
 
le paso un valor con get y no funciona

$cadena = $_GET["id"];
//$cadena = "hola+"; //si anda
if(strrpos($cadena, '+', -1)===false){
echo "no lo encontro";
}else{
echo "lo encontre";
}
 
usualmente no toma el + como parte del get, tendrías que analizar el querystring $_SERVER['QUERY_STRING'] o en su defecto ponerle algo diferente en lugar del +
 
Hola

el + lo toma como un espacio, no lo recibe como un caracter.

Necesitas utilizar otro signo, o como te dijeron un numero.

Saludos
 
Si siempre va a estar al final lo más fácil es:
PHP:
if(substr($_SERVER['QUERY_STRING'], - 1) == '+'){
//Hay un + al final
}

Lo que comentas que no te funciona con el $_GET es porque el símbolo + es un caracter especial de las URL que indica un espacio
 
Aqui esta la solucion
PHP:
$cadena = $_GET["id"];
$cont = strlen($cadena);
	if (substr($cadena,$cont-1) == "+"){
		//lo encontró
	}else{
		//no lo encontró
	}
 
Aqui esta la solucion
PHP:
$cadena = $_GET["id"];
$cont = strlen($cadena);
	if (substr($cadena,$cont-1) == "+"){
		//lo encontró
	}else{
		//no lo encontró
	}
Eso no funcionará ya que cuando PHP procesa la petición los + de la URL son convertidos a espacios.
 
Atrás
Arriba