2012-06-29 9 views
11

¿Cuál es la forma más práctica de superar la confusión del pajar de agujas en PHP?Superar la confusión del pajar de agujas en PHP

Aquí $ aguja es el primer argumento

bool in_array (mixed $needle , array $haystack [, bool $strict = FALSE ]) 

Aquí $ aguja es el segundo argumento

string strstr (string $haystack , mixed $needle [, bool $before_needle = false ]) 
+6

https://gist.github.com/1672543 – Gordon

+0

@Gordon, Intercambié esta lista de funciones con la matriz interna de 'get_defined_functions()', y se encontró que esta lista no alcanza las funciones de cadena MB y el iconv unos. Pero todavía está limpio; -? – TerryE

+0

Parahat, esta es solo una de las muchas facetas que subrayan el hecho de que PHP evolucionó en lugar de nacer de un rediseño limpio. Las convenciones de nombres de funciones múltiples es otra. – TerryE

Respuesta

1

No creo que eso es importante. Es lo mismo con Linux Bash. Por ejemplo, tar utiliza argumentos archivos de archivado pero ln usa argumentos target linkname. Pero mi ejemplo no es un lenguaje de programación, así que aquí hay otra explicación: ¿cuál fue el primero en contar o numerar el mundo? Para lo que necesitas, siempre hay 2 argumentos. Lo mismo es cierto para mi ejemplo con tar y ln.

8

podría tener sentido si lo considera una representación previa a la corrección de las operaciones de reparación.

is "bat" in array ("cat", "rat", "bat", "fat") 
is $needle in_array $haystack 
in_array($needle, $haystack) 


does "supercalifragistic" string contain string "percal" 
does $haystack strstr $needle 
strstr($haystack, $needle) 
+1

Pero la cadena es una matriz de caracteres. ** ** –

+2

¿Pero por qué la oración 'does $ haystack strstr $ needle' es más lógica que' is $ needle strstr $ haystack'? – Nanne

+0

@Nanne más sobre mnemónico que lógica. la declaración 'is x in y' tiene 'in', y por lo tanto in_array primer param será x y el segundo será y. en la oración con el 'hace', la y es anterior a la x. entonces la función tomaría y primero y luego x. –

Cuestiones relacionadas