{"id":38459,"date":"2017-07-07T09:17:18","date_gmt":"2017-07-07T14:17:18","guid":{"rendered":"http:\/\/webirix.com\/?p=38459"},"modified":"2017-07-07T09:31:04","modified_gmt":"2017-07-07T14:31:04","slug":"estandares-de-programacion-2","status":"publish","type":"post","link":"https:\/\/webirix.com\/en\/estandares-de-programacion-2\/","title":{"rendered":"Programming standards"},"content":{"rendered":"<div class=\"article-featured\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-blog size-blog wp-post-image\" src=\"http:\/\/develop.ibox.mx\/wp-content\/uploads\/2016\/01\/imagen_php.png\" sizes=\"auto, (max-width: 722px) 100vw, 722px\" srcset=\"http:\/\/develop.ibox.mx\/wp-content\/uploads\/2016\/01\/imagen_php.png 722w, http:\/\/develop.ibox.mx\/wp-content\/uploads\/2016\/01\/imagen_php-300x145.png 300w\" alt=\"imagen_php\" width=\"722\" height=\"350\" \/><\/div>\n<div class=\"entry-content clearfix\">\n<h3><strong>Nombres de variables<\/strong><\/h3>\n<ol>\n<li>La primer letra de una variable debe iniciar con min\u00fascula<\/li>\n<li>Las variables\u00a0<em>nativas<\/em>\u00a0o\u00a0<em>arrays<\/em>\u00a0deben ir separadas por\u00a0<em>gui\u00f3n bajo<\/em>(_) cada cambio de palabra\u00a0: $my_var<\/li>\n<li>Las varibles que sean\u00a0<em>Objetos\u00a0<\/em>deben cambiar a may\u00fasculas cada cabo de palabra, ejemplo: $myVar<\/li>\n<li>Las varibles globales deben ir todas con mayusculas, ejemplo: $MY_VAR<\/li>\n<\/ol>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Asignaciones\"><strong>Asignaciones<\/strong><\/h3>\n<ol>\n<li>Debe haber un espacio entre la variable y los operadores:<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<pre>$my_var = 17;\r\n\r\n$a = $b;<\/pre>\n<p>&nbsp;<\/p>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Operadores\">Operadores<\/h3>\n<ol>\n<li>&#8220;+&#8221;, &#8220;-&#8220;, &#8220;*&#8221;, &#8220;\/&#8221;, &#8220;=&#8221; y cualquier combinaci\u00f3n de ellos (ej. &#8220;\/=&#8221;) necesitan un espacio entre<br \/>\nmiembros de la izquierda y la derecha<\/p>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>$a +\u00a0<\/code><code>17<\/code><code>;<\/code><\/p>\n<p><code>$result = $b \/\u00a0<\/code><code>2<\/code><code>;<\/code><\/p>\n<p><code>$i +=\u00a0<\/code><code>34<\/code><code>;<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>&#8220;.&#8221; no llevan espacio entre los miembros de la izquierda y la derecha<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>echo $a.$b;<\/code><\/p>\n<p><code>$c = $d.$<\/code><code>this<\/code><code>-&gt;foo();<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Recomendaci\u00f3n<\/p>\n<p>Por motivos de rendimiento, no exceda el uso de la concatenaci\u00f3n.<\/li>\n<li>&#8220;.=&#8221; necesita un espacio entre los miembros de la izquierda y la derecha<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>$a .=\u00a0<\/code><code>'Debug'<\/code><code>;<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<\/ol>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Declaraciones\">Declaraciones<\/h3>\n<ol>\n<li>if, elseif, while, for:deben presentar un espacio entre la palabra clave if y el par\u00e9ntesis<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>if<\/code>\u00a0<code>(&lt;condition&gt;)<\/code><\/p>\n<p><code>while<\/code>\u00a0<code>(&lt;condition&gt;)<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>Cuando una combinaci\u00f3n de if y else else es utilizada y si ambas deben ofrecer un valor, el else debe ser evitado.<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>if<\/code>\u00a0<code>(&lt;condition&gt;)<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>return<\/code>\u00a0<code>false<\/code><code>;<\/code><\/p>\n<p><code>return<\/code>\u00a0<code>true<\/code><code>;<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Recomendaci\u00f3n<\/p>\n<p>Le recomendamos un resultado por m\u00e9todo \/ funci\u00f3n<\/li>\n<li>Cuando un m\u00e9todo \/ funci\u00f3n ofrece un valor booleano y el valor actual del m\u00e9todo \/ funci\u00f3n depende de ello, la declaraci\u00f3n if debe ser evitada<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>public<\/code>\u00a0<code>aFirstMethod()<\/code><\/p>\n<p><code>{<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>return<\/code>\u00a0<code>$<\/code><code>this<\/code><code>-&gt;aSecondMethod();<\/code><\/p>\n<p><code>}<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>Las pruebas deben ser agrupadas por &#8220;entidad&#8221;<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>if<\/code>\u00a0<code>($price AND !empty($price))<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>[...]<\/code><\/p>\n<p><code>if<\/code>\u00a0<code>(!Validate::$myObject OR $myObject-&gt;id === NULL)<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>[...]<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<\/ol>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Visibilidad\">Visibilidad<\/h3>\n<ol>\n<li>La visibilidad debe definirse en cada momento, incluso cuando se trata de un m\u00e9todo p\u00fablico.<\/li>\n<li>El orden de las propiedades del m\u00e9todo debe ser: visibility static function name()<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>private<\/code>\u00a0<code>static<\/code>\u00a0<code>function foo()<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<\/ol>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-NombresdeM\u00e9todo\/Funci\u00f3n\">Nombres de M\u00e9todo \/ Funci\u00f3n<\/h3>\n<ol>\n<li>Los nombres del m\u00e9todo y la funci\u00f3n comienzan siempre con un car\u00e1cter en min\u00fascula y cada una de las palabras siguientes deben comenzar con un car\u00e1cter en may\u00fasculas (CamelCase)<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>public<\/code>\u00a0<code>function myExempleMethodWithALotOfWordsInItsName()<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>Los corchetes que se presentan en el c\u00f3digo del m\u00e9todo tienen que ser precedidos por un retorno<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>public<\/code>\u00a0<code>function myMethod($arg1, $arg2)<\/code><\/p>\n<p><code>{<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>[...]<\/code><\/p>\n<p><code>}<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>Los nombres de los m\u00e9todos y las funciones deben ser nombres expl\u00edcitos, por lo tanto nombres de funci\u00f3n como &#8220;b()&#8221; o &#8220;ef()&#8221; est\u00e1n completamente prohibidos.Excepciones\n<p>Las \u00fanicas excepciones son la funci\u00f3n de traducci\u00f3n llamada &#8220;l()&#8221; y las funciones de depuraci\u00f3n &#8220;p()&#8221;, &#8220;d()&#8221;.<\/li>\n<\/ol>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Enumeraci\u00f3n\">Enumeraci\u00f3n<\/h3>\n<p>Las comas deben estar seguidas (y s\u00f3lo seguidas) por un espacio.<\/p>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>protected<\/code>\u00a0<code>function myProtectedMethod($arg1, $arg2, $arg3 =\u00a0<\/code><code>null<\/code><code>)<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Objetos\/Clases\">Objetos \/ Clases<\/h3>\n<ol>\n<li>El nombre del objeto debe colocarse en singular<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>class<\/code>\u00a0<code>Customer<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>El nombre de la clase debe seguir el modelo CamelCase, excepto que la primera letra sea may\u00fascula<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>class<\/code>\u00a0<code>MyBeautifulClass<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<\/ol>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Definiciones\">Definiciones<\/h3>\n<ol>\n<li>Los nombres de las definiciones deben ser ingresados en may\u00fasculas<\/li>\n<li>Los nombres de las definiciones deben contar con el prefijo &#8220;PS_&#8221; dentro del n\u00facleo y el m\u00f3dulo<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>define(<\/code><code>'PS_DEBUG'<\/code><code>,\u00a0<\/code><code>1<\/code><code>);<\/code><\/p>\n<p><code>define(<\/code><code>'PS_MODULE_NAME_DEBUG'<\/code><code>,\u00a0<\/code><code>1<\/code><code>);<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>Los nombres de las definiciones no permiten caracteres alfab\u00e9ticos. Excepto \u201c_\u201d.<\/li>\n<\/ol>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Palabrasclaves\">Palabras claves<\/h3>\n<p>Todas las palabras clave deben colocarse en min\u00fasculas<br \/>\nej. as, case, if, echo, null<\/p>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Constantes\">Constantes<\/h3>\n<p>Las constantes deben estar en may\u00fasculas, excepto &#8220;verdadero&#8221; y &#8220;falso&#8221; y &#8220;nulo&#8221;, que debe estar en min\u00fasculas<br \/>\nej. &#8220;ENT_NOQUOTE&#8221;, &#8220;true&#8221;<\/p>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Variablesdeconfiguraci\u00f3n\">Variables de configuraci\u00f3n<\/h3>\n<p>Las variables de configuraci\u00f3n siguen las mismas reglas que las definiciones<\/p>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Cadenas\">Cadenas<\/h3>\n<p>Las Cadenas deben ir entre comillas simples, nunca dobles<\/p>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>echo\u00a0<\/code><code>'Debug'<\/code><code>;<\/code><\/p>\n<p><code>$myObj-&gt;name =\u00a0<\/code><code>'Hello '<\/code><code>.$name;<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Comentarios\">Comentarios<\/h3>\n<ol>\n<li>Dentro de las funciones y m\u00e9todos, s\u00f3lo la etiqueta &#8220;\/\/&#8221; de comentario es permitida<\/li>\n<li>Despu\u00e9s de la etiqueta &#8220;\/\/&#8221; de comentario, un espacio \u201c\/\/ Comment\u201c es necesario<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>\/\/ My great comment<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>La etiqueta &#8220;\/\/&#8221; de comentario es permitida al final de una l\u00ednea de c\u00f3digo<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>$a =\u00a0<\/code><code>17<\/code>\u00a0<code>+\u00a0<\/code><code>23<\/code><code>;\u00a0<\/code><code>\/\/ A comment inside my exemple function<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>Funciones y m\u00e9todos externos, s\u00f3lo las etiquetas &#8220;\/<strong>&#8221; y &#8220;<\/strong>\/&#8221; de comentario son permitidas<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>\/* This method is required for compatibility issues *\/<\/code><\/p>\n<p><code>public<\/code>\u00a0<code>function foo()<\/code><\/p>\n<p><code>{<\/code><\/p>\n<p><code>\/\/ Some code explanation right here<\/code><\/p>\n<p><code>[...]<\/code><\/p>\n<p><code>}<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>Comentario PHP Doc Element es necesario antes de las declaraciones de m\u00e9todo<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>\/**<\/code><\/p>\n<p><code>\u00a0<\/code><code>* Return field value if possible (both classical and multilingual fields)<\/code><\/p>\n<p><code>\u00a0<\/code><code>*<\/code><\/p>\n<p><code>\u00a0<\/code><code>* Case 1 : Return value if present in $_POST \/ $_GET<\/code><\/p>\n<p><code>\u00a0<\/code><code>* Case 2 : Return object value<\/code><\/p>\n<p><code>\u00a0<\/code><code>*<\/code><\/p>\n<p><code>\u00a0<\/code><code>* @param object $obj Object<\/code><\/p>\n<p><code>\u00a0<\/code><code>* @param string $key Field name<\/code><\/p>\n<p><code>\u00a0<\/code><code>* @param integer $id_lang Language id (optional)<\/code><\/p>\n<p><code>\u00a0<\/code><code>* @return string<\/code><\/p>\n<p><code>\u00a0<\/code><code>*\/<\/code><\/p>\n<p><code>protected<\/code>\u00a0<code>function getFieldValue($obj, $key, $id_lang = NULL)<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Para m\u00e1s informaci\u00f3n<\/p>\n<p>Para m\u00e1s informaci\u00f3n acerca de la regla PHP Doc: vea\u00a0<a href=\"http:\/\/www.baluart.net\/articulo\/php-orientado-a-objetos-for-beginners-iii\" rel=\"nofollow\">este enlace \u00fatil<\/a><\/li>\n<\/ol>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Devoluci\u00f3ndevalores\">Devoluci\u00f3n de valores<\/h3>\n<ol>\n<li>Las declaraciones de devoluci\u00f3n no necesitan par\u00e9ntesis, excepto cuando se trata de una expresi\u00f3n compuesta<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>return<\/code>\u00a0<code>$result;<\/code><\/p>\n<p><code>return<\/code>\u00a0<code>($a + $b);<\/code><\/p>\n<p><code>return<\/code>\u00a0<code>(a() - b());<\/code><\/p>\n<p><code>return<\/code>\u00a0<code>true<\/code><code>;<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>Desarmar una funci\u00f3n<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>return<\/code><code>;<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<\/ol>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Llamada\">Llamada<\/h3>\n<p>La funci\u00f3n de llamada precedida por una &#8220;@&#8221; est\u00e1 prohibida pero tenga cuidado con la llamada a la funci\u00f3n \/ m\u00e9todo con login \/ contrase\u00f1a o ruta de argumentos.<\/p>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>myfunction()<\/code><\/p>\n<p><code>\/\/ En el siguiente ejemplo colocamos una @ por motivos de seguridad<\/code><\/p>\n<p><code>@mysql_connect<\/code><code>([...]);<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Etiquetas\">Etiquetas<\/h3>\n<ol>\n<li>Una l\u00ednea en blanco debe dejarse despu\u00e9s de la etiqueta de apertura de PHP<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>&lt;?php<\/code><\/p>\n<p>&nbsp;<\/p>\n<p><code>require_once(<\/code><code>'my_file.inc.php'<\/code><code>);<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>La etiqueta final de PHP est\u00e1 prohibida<\/li>\n<\/ol>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Indentaci\u00f3n\">Indentaci\u00f3n<\/h3>\n<ol>\n<li>El car\u00e1cter de tabulaci\u00f3n (&#8220;\\t&#8221;) es el \u00fanico caracter de indentaci\u00f3n que se permite<\/li>\n<li>Cada nivel de indentaci\u00f3n debe ser representado por un solo caracter de tabulaci\u00f3n<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>function foo($a)<\/code><\/p>\n<p><code>{<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>if<\/code>\u00a0<code>($a ==\u00a0<\/code><code>null<\/code><code>)<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code>return<\/code>\u00a0<code>false<\/code><code>;<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>[...]<\/code><\/p>\n<p><code>}<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<\/ol>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Matriz\">Matriz<\/h3>\n<ol>\n<li>La palabra clave de la matriz no debe ser seguida por un espacio<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>array(<\/code><code>17<\/code><code>,\u00a0<\/code><code>23<\/code><code>,\u00a0<\/code><code>42<\/code><code>);<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>La indentaci\u00f3n debe ser de la siguiente forma cuando muchos datos se encuentran dentro de una matriz:<br \/>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>$a = array(<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>36<\/code>\u00a0<code>=&gt; $b,<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>$c =&gt;\u00a0<\/code><code>'foo'<\/code><code>,<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>$d =&gt; array(<\/code><code>17<\/code><code>,\u00a0<\/code><code>23<\/code><code>,\u00a0<\/code><code>42<\/code><code>),<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>$e =&gt; array(<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code>0<\/code>\u00a0<code>=&gt;\u00a0<\/code><code>'zero'<\/code><code>,<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code>1<\/code>\u00a0<code>=&gt; $one<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>)<\/code><\/p>\n<p><code>);<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<\/ol>\n<h3 id=\"Est\u00e1ndaresdedesarrollo-Bloque\">Bloque<\/h3>\n<p>Los corchetes est\u00e1n prohibidos cuando se define solamente una instrucci\u00f3n o una combinaci\u00f3n de declaraci\u00f3n<\/p>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td><code>if<\/code>\u00a0<code>(!$result)<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>return<\/code>\u00a0<code>false<\/code><code>;<\/code><\/p>\n<p>&nbsp;<\/p>\n<p><code>for<\/code>\u00a0<code>($i =\u00a0<\/code><code>0<\/code><code>; $i &lt;\u00a0<\/code><code>17<\/code><code>; $i++)<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>if<\/code>\u00a0<code>($myArray[$i] == $value)<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code>$result[] = $myArray[$i];<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0<\/code><code>else<\/code><\/p>\n<p><code>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code>$failed++;<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Variable names The first letter of a variable must start with a lowercase Native variables or arrays must be separated by an underscore (_) each word change: $my_var Variables that are Objects must change to uppercase each word end, example: $myVar Global variables must be all capitalized, example: $MY_VAR Assignments There must be a space between the variable ...<\/p>","protected":false},"author":24,"featured_media":38473,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2023],"tags":[],"class_list":["post-38459","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress"],"jetpack_featured_media_url":"https:\/\/webirix.com\/wp-content\/uploads\/2017\/07\/imagen_php.png","_links":{"self":[{"href":"https:\/\/webirix.com\/en\/wp-json\/wp\/v2\/posts\/38459","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webirix.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webirix.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webirix.com\/en\/wp-json\/wp\/v2\/users\/24"}],"replies":[{"embeddable":true,"href":"https:\/\/webirix.com\/en\/wp-json\/wp\/v2\/comments?post=38459"}],"version-history":[{"count":2,"href":"https:\/\/webirix.com\/en\/wp-json\/wp\/v2\/posts\/38459\/revisions"}],"predecessor-version":[{"id":38474,"href":"https:\/\/webirix.com\/en\/wp-json\/wp\/v2\/posts\/38459\/revisions\/38474"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webirix.com\/en\/wp-json\/wp\/v2\/media\/38473"}],"wp:attachment":[{"href":"https:\/\/webirix.com\/en\/wp-json\/wp\/v2\/media?parent=38459"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webirix.com\/en\/wp-json\/wp\/v2\/categories?post=38459"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webirix.com\/en\/wp-json\/wp\/v2\/tags?post=38459"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}