Estoy usando el siguiente código para hacer eco de una parte de una URL y mi URL dinámica ahora se ve así.
https://example.test/test.php?name=living-room Pero la condición es que solo se repetirá si la parte del name de la URL está en mi matriz.
$array = array('kitchen', 'bedroom', 'living room', 'dining room'); if (in_array($_GET['name'], $array)) {echo $_GET['name'];} else {header("HTTP/1.0 404 Not Found");} Lo que intento hacer es tratar el - en la parte del name de la URL como espacios.
Por ejemplo, living-room debe ser igual a living room de estar en mi conjunto y debe reflejar el valor en mi conjunto ( living room de estar) en lugar de ( living-room ).
living-room , verificamos la matriz y, dado living room de estar existe en la matriz, se repetirá la living room de estar.dining-room , dado que dining room existe en mi matriz, se repetirá dining room .Me está costando encontrar la lógica correcta para esto.
Puede hacer un reemplazo de cadena mientras repite la cadena desde el parámetro URL. Puedes hacer algo como esto:
header("Content-Type: text/plain"); $name = $_GET['name']; $name = str_replace("-"," ",$name); // Replace - with space $array = ['kitchen', 'bedroom', 'living room', 'dining room']; if (in_array($name, $array, true)) { // Found echo $name, "\n"; } else { // Not found header("HTTP/1.0 404 Not Found"); }Puede usar str_replace para reemplazar " - " (U+002D GUIÓN-MENOS) con " " (U+0020 ESPACIO) en su cadena así:
header("Content-Type: text/plain"); $array = ['kitchen', 'bedroom', 'living room', 'dining room']; $needle = str_replace("-", " ", $_GET['name']); if (in_array($needle, $array, true)) { echo $needle, "\n"; } else { header("HTTP/1.0 404 Not Found"); }