PHP - eliminar todas las palabras a la derecha a partir de una palabra

 
Vista:
Imágen de perfil de Orlando
Val: 103
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

eliminar todas las palabras a la derecha a partir de una palabra

Publicado por Orlando (73 intervenciones) el 13/09/2020 06:21:00
Buen día y gracias por su ayuda.

Tengo el siguiente resultado de una tabla dinamica (correo), hago el select y muestra este resultado:

==>Mérida Comuna de residencia: El Chama
==>El Chama

Deseo que a partir de la palabra Comuna...se elimine o no muestre las palabras : Comuna de residencia: El Chama

Debe quedar asi:

==>Mérida
==>El Chama

Este es el query:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
include("conexion/conexion.php");
$clientes = "SELECT id, sent_date, SUBSTRING(subject, 39), message FROM wpju_email_log";
?>
<body>
	<form method="post">
		<input type="text" placeholder="Tipo de caso" name="xtipodecaso">
				<select name="xregistros">
			<option value="">Nro. de Registros</option>
			<option value="limit 3">3</option>
			<option value="limit 6">6</option>
			<option value="limit 9">9</option>
		</select>
	</form>
	<div class="container-table">
		<?php $resultado = mysqli_query($conexion, $clientes);
		while ($row=mysqli_fetch_assoc($resultado)) { ?>
 
		<div class="table__item"><?php echo $row["id"]?></div>
		<div class="table__item"><?php echo $row["sent_date"]?></div>
		<div class="table__item"><?php echo $row["SUBSTRING(subject, 39)"]?></div>
		<?php $s = $row["message"];
		$segundo = strpos($s, "Comuna de residencia: ");
		$primero = strpos($s, "Region de residencia: ");
		//echo sprintf("s = '%s', Largo total = %d, comienzo 'Comuna de residencia: ' = %d", $s, strlen($s), $segundo).PHP_EOL;
        $region = substr($s, $primero + strlen('Region de residencia: '));
        $comuna = substr($s, $segundo + strlen('Comuna de residencia: '));
        //echo "Region = '$region', Comuna = '$comuna'".PHP_EOL;?>
        <?php
 
        $string = $row["message"];
        $search = "Region de residencia: ";
        $pos = strpos($string, $search);
        $return = substr($string, $pos+strlen($search));
 
        ?>
 
        <div class="table__item"><?php echo '==>'.$return?></div>
        <div class="table__item"><?php echo '==>'.$comuna?></div>
 
 
		<a href="consulta_caso.php?id=<?php echo $row["id"];?>" class="table__item__link">Ver caso</a>
		</div>
 
		<?php } mysqli_free_result($resultado);?>
 
		<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
	</div>
</body>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

eliminar todas las palabras a la derecha a partir de una palabra

Publicado por Germán (3 intervenciones) el 13/09/2020 08:06:24
http://codepad.org/2tA2j0Sc

1
2
3
4
5
6
7
<?php
 
$string = "Mérida Comuna de residencia: El Chama";
$needle = "Comuna";
$array = explode($needle, $string);
$resultado = $array[0];
echo $resultado.PHP_EOL;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de joel
Val: 3.063
Oro
Ha aumentado su posición en 2 puestos en PHP (en relación al último mes)
Gráfica de PHP

eliminar todas las palabras a la derecha a partir de una palabra

Publicado por joel (954 intervenciones) el 13/09/2020 11:52:37
Muy bien pensado Germán!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de orlando
Val: 103
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

eliminar todas las palabras a la derecha a partir de una palabra

Publicado por orlando (73 intervenciones) el 13/09/2020 17:01:08
Muchas gracias me quedo a la perfección.

Código final:

1
2
3
4
5
6
7
8
9
10
11
12
$string = $row["message"];
$search = "Region de residencia: ";
$pos = strpos($string, $search);
$return = substr($string, $pos+strlen($search));
 
$string = $return;
$needle = "Comuna";
$array = explode($needle, $string);
$resultado = $array[0];
 
 
<div class="table__item"><?php echo '==>'.$resultado.PHP_EOL;?></div>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar