2010-11-05 18 views

Respuesta

4

En una conjetura, diría $text es una cadena vacía (gracias Marcos por señalar los detalles)

Editar: También, otra suposición es que tienes los parámetros en el orden incorrecto. La firma del método de strpos es

int strpos (string $haystack , mixed $needle [, int $offset = 0 ]) 

Ver http://php.net/manual/en/function.strpos.php

+2

específicamente $ text = "". $ text = NULL devolverá un falso. –

+0

Lo encontré. La función anterior no verifica si el texto está vacío: D Gracias Marcar: D – Woppi

1

Para empezar se van sobre todo mal ....

  • strpos pueden devolver un false, "", 0
  • la primer argumento debe ser el hastack
  • el segundo argumento debe ser la aguja.

lo que debe hacer es:

if(false !== ($position = strpos($text,'''))) //Position Found and set in $position 
{ 
    //$position holds the offset to the needle. 
    $text = str_replace(''', "'", $text); 
} 

petones

+1

'strpos' devuelve booleano' FALSE' si no se puede encontrar la aguja – Phil

+1

Qoute: "Esta función puede devolver Boolean' FALSE', pero también puede devolver un valor no booleano que evalúa como 'FALSE', como' 0' o '" "'. "... ¡¡¡¡¡¡¡¡¡¡¡Por eso dije el comentario !!! – RobertPitt

+0

Para aclarar, 'strpos' devolverá el entero 0 si la aguja se encuentra en la primera posición en el pajar. Entonces 0 == encontrado, FALSO == no encontrado. Como la pregunta dice '=== false', supongo que solo quieren ingresar a la rama si la aguja * no * se encuentra. – Phil

0

trate de añadir comillas dobles en el de la variable $Text

Cambio: if(strpos(''', $text)

en: if(strpos(''', ".$text.")

if(strpos(''', ".$text.") === false) 
    { 
     $text = str_replace(''', "'", $text); 
    } 
0

Experimenté este error después de eliminar?> Del final de los temas function.php en WP, pero el error solo se informó una vez.