La función de wp_parse_args() (como muchos otros indocumentados) dibujar una cadena en el formato:
1 | var1 = valor1 & var2 = valor2 ... Varn = valorN |
Esta es una característica muy común en las funciones de WordPress y es útil cuando una función es compatible con paramteri múltiple. Como se mencionó temas y variables predeterminadas en JavaScript, ActionScript y PHP , no hay necesidad de pasar los parámetros en el modo de var1=value1&var2=value2...varn=valuen , debido a que PHP es capaz de manejar con seguridad el paso de parámetros las variables.
Sinopsis
1 2 3 4 5 6 7 8 9 10 11 12 | / ** * Combinar el usuario define los argumentos en una matriz por defecto. * * Esta función se utiliza a través de WordPress para permitir una cadena o una matriz Tanto * Se fusionó con otra matriz. * * @ Desde la versión 2.2.0 * * @ Param (cadena | matriz) $ args valor de fusión con US $ por defecto * @ Param (array) $ array por defecto que sirva como los valores predeterminados. * @ Return (matriz) Fusionada definido por el usuario los valores con los valores predeterminados. * / |
En realidad el primer parámetro puede ser también un objeto. Si pasa una cadena con los valores separados por ampersen, la función se llama de bajo nivel de WordPress wp_parse_str()
Ejemplo
Para aclarar el funcionamiento vemos un ejemplo. . Imagine tener que escribir una función ( myFunc() ) que es compatible con tres parámetros opcionales: par1, par2 e par3 . La declaración es obviamente:
1 | $args ) { } función de myFunc ($ args) {} |
¿Dónde está nuestro $ args estará en la cadena de formato:
1 | var1 = valor1 & var2 = valor2 ... Varn = valorN |
Una posible llamada podría ser:
1 | ) ; myFunc ("PAR3 y par1 = hola = hola"); |
A propósito poner los parámetros en cualquier orden, otra característica que la hace versátil. Vamos a ver cómo el trabajo de manera wp_parse_args() :
1 2 3 4 5 6 7 | $args ) { función de myFunc ($ args) { wp_parse_args ( $args ) ; New_args wp_parse_args = $ ($ args); / / [ "par1" ] ; echo $ new_args ["par1"]; [ "par2" ] ; echo $ new_args ["par2"]; [ "par3" ] ; echo $ new_args ["PAR3"]; } |
non è impostato! Llamar a nuestra función myFunc( "par3=ciao&par1=salve" ); encontramos que par2 no está configurado! Y es por eso que el segundo parámetro de la función wp_parse_args() :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | $args ) { función de myFunc ($ args) { array ( "par1" => "salve" , $ Default = array ("par1" => "hola", "come" , "Par2" => "cómo" "va?" ) ; "PAR3" => "malo"); / / wp_parse_args ( $args , $default ) ; New_args wp_parse_args = $ ($ args, $ defecto); / / [ "par1" ] ; echo $ new_args ["par1"]; [ "par2" ] ; echo $ new_args ["par2"]; [ "par3" ] ; echo $ new_args ["PAR3"]; } / / ) ; myFunc ("PAR3 y par1 = eres ="); / / Nos / / Usted / / Como / / Tú eres |
La conveniencia de este enfoque es la capacidad de los valores por defecto pre-establecidos que se utilizan cuando no esté en la cadena que se pasa como primer parámetro.
¿Por qué utilizar wp_parse_args ()
e array_merge() . Todo esto sería posible sin el uso de wp_parse_args() en PHP ya ofrece todas las funciones para hacer este trabajo, véase, por ejemplo: parse_str() y array_merge() . Utilice wp_parse_args() debe principalmente a 2 razones:
- gestiona por nosotros el paso de un objeto, matriz o una cadena
- su comportamiento se modifica a través de los filtros de WordPress: ver apply_filters ()










[...] Leer la fuente de este artículo: WordPress: wp_parse_args () | Autor Undolog.com: [...]
[...] Además, consulte el artículo original: WordPress: wp_parse_args () | Autor Undolog.com: [...]
[...] Como hemos visto en WordPress: wp_parse_args (), el atributo de la gestión es muy simple y le permite ajustar los valores por defecto en [...]
actualización de WordPress se ha actualizado la documentación de esta función.