<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Carlos Alberto</title>
    <description>The latest articles on DEV Community by Carlos Alberto (@charlygarcia120).</description>
    <link>https://dev.to/charlygarcia120</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F373956%2F4b6a44ad-b38f-4483-aba7-1794f59b6dda.jpg</url>
      <title>DEV Community: Carlos Alberto</title>
      <link>https://dev.to/charlygarcia120</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/charlygarcia120"/>
    <language>en</language>
    <item>
      <title>Simulaciones físicas usando Web</title>
      <dc:creator>Carlos Alberto</dc:creator>
      <pubDate>Wed, 12 Feb 2025 07:53:32 +0000</pubDate>
      <link>https://dev.to/charlygarcia120/simulaciones-fisicas-usando-web-4a9b</link>
      <guid>https://dev.to/charlygarcia120/simulaciones-fisicas-usando-web-4a9b</guid>
      <description>&lt;p&gt;El uso de modelados y simulaciones con lenguajes de programación web ha revolucionado la enseñanza de la física en programas de pregrado en ingeniería. Tradicionalmente, los conceptos físicos se explicaban mediante ecuaciones y gráficos estáticos, lo que dificultaba su comprensión intuitiva. Sin embargo, con herramientas interactivas desarrolladas en lenguajes como JavaScript y frameworks especializados, los estudiantes pueden visualizar fenómenos complejos en tiempo real, interactuar con los parámetros del sistema y observar los efectos de sus modificaciones. Esta metodología permite una inmersión profunda en la física aplicada, facilitando el desarrollo del pensamiento analítico y la capacidad de abstracción necesarias en disciplinas como la electromagnetismo y la dinámica de sistemas.&lt;/p&gt;

&lt;p&gt;Un ejemplo destacado de esta estrategia es el sitio web &lt;a href="http://www.fisicaconabel.com" rel="noopener noreferrer"&gt;www.fisicaconabel.com&lt;/a&gt;, creado y mantenido por el ingeniero Carlos García como parte de su ejercicio docente en la Universidad de Caldas. Este portal integra simulaciones interactivas diseñadas para complementar la enseñanza de la física en los programas de ingeniería, permitiendo a los estudiantes explorar desde principios básicos de cinemática hasta modelos avanzados de sistemas electromagnéticos. A través de gráficos dinámicos y controles ajustables, los alumnos pueden analizar, por ejemplo, cómo varía el campo eléctrico en presencia de distintas configuraciones de cargas o cómo se propagan ondas electromagnéticas en diferentes medios.&lt;/p&gt;

&lt;p&gt;La implementación de estas simulaciones ha demostrado ser una herramienta poderosa para mejorar la comprensión conceptual y la retención del conocimiento. En lugar de depender únicamente de ejercicios teóricos, los estudiantes pueden experimentar de manera virtual con circuitos eléctricos, ondas de radio y campos magnéticos, fortaleciendo su intuición física antes de enfrentarse a laboratorios experimentales. Este enfoque, basado en modelado y simulación, no solo optimiza el aprendizaje, sino que también refuerza habilidades fundamentales para el diseño y análisis de sistemas en el ámbito de la ingeniería, alineándose con las tendencias actuales de enseñanza basada en tecnología.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>mixedreality</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Expresión regular para remover caracteres al final</title>
      <dc:creator>Carlos Alberto</dc:creator>
      <pubDate>Sun, 22 Jan 2023 00:09:03 +0000</pubDate>
      <link>https://dev.to/charlygarcia120/expresion-regular-para-remover-caracteres-al-final-2j00</link>
      <guid>https://dev.to/charlygarcia120/expresion-regular-para-remover-caracteres-al-final-2j00</guid>
      <description>&lt;p&gt;Expresión regular para remover N caracteres al final de todas la líneas de un archivo, en este ejemplo 1, usando notepad++.&lt;/p&gt;

&lt;h2&gt;
  
  
  .{8}$
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fftnu3asavxmem8zp1dwu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fftnu3asavxmem8zp1dwu.png" alt="Image description" width="690" height="447"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://stackoverflow.com/questions/15454869/how-to-remove-the-last-13-or-n-characters-of-every-line-using-notepad" rel="noopener noreferrer"&gt;https://stackoverflow.com/questions/15454869/how-to-remove-the-last-13-or-n-characters-of-every-line-using-notepad&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Como listar los posts de un blog de Blogger en mi web</title>
      <dc:creator>Carlos Alberto</dc:creator>
      <pubDate>Fri, 14 Oct 2022 20:16:08 +0000</pubDate>
      <link>https://dev.to/charlygarcia120/como-listar-los-posts-de-un-blog-de-blogger-en-mi-web-550p</link>
      <guid>https://dev.to/charlygarcia120/como-listar-los-posts-de-un-blog-de-blogger-en-mi-web-550p</guid>
      <description>&lt;p&gt;Para listar los posts de un blog de blogger usando un criterio de búsqueda se debe usar las API de JSON de blogger, aquí hay un código que me encontré que puede ser muy útil para todos los que lo necesiten&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;html&amp;gt;
&amp;lt;body&amp;gt;
&amp;lt;div&amp;gt;&amp;lt;ul id="postList12"&amp;gt;&amp;lt;/ul&amp;gt;&amp;lt;/div&amp;gt;
&amp;lt;script type="text/javascript"&amp;gt;
    var startIndex = 1;
    var maxResults = 50;

    function sendQuery12()
    {
       var scpt = document.createElement("script");
       quer="Arboleda";
       quer=quer.toLowerCase();
       scpt.src = "http://elblogdenimu.blogspot.com/feeds/posts/default?q=label:"+quer+"&amp;amp;alt=json&amp;amp;callback=processPostList12&amp;amp;start-index=" + startIndex + "&amp;amp;max-results=" + maxResults;     
       document.body.appendChild(scpt);
    }

    function processPostList12(root)
    {
       var elmt = document.getElementById("postList12");
       if (!elmt)
          return;

       var feed = root.feed;

       if (feed.entry.length &amp;gt; 0)
       {
          for (var i = 0; i &amp;lt; feed.entry.length; i++)
          {
             var entry = feed.entry[i];
             var title = entry.title.$t;


             for (var j = 0; j &amp;lt; entry.link.length; j++)
             {
                if (entry.link[j].rel == "alternate")
                {
                   var url = entry.link[j].href;

                   if (url &amp;amp;&amp;amp; url.length &amp;gt; 0 &amp;amp;&amp;amp; title &amp;amp;&amp;amp; title.length &amp;gt; 0)
                   {
                      var liE = document.createElement("li");

                      var a1E = document.createElement("a");
                      a1E.href = url;
                      //a1E.textContent = title+"  "+feed.entry.length;
                      a1E.textContent = title;

                      liE.appendChild(a1E);
                      elmt.appendChild(liE);
                   }

                   break;
                }
             }
          }

          if (feed.entry.length &amp;gt;= maxResults)
          {
             startIndex += maxResults;
             //sendQuery12();
          }
       }
    }

    sendQuery12();
&amp;lt;/script&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
    </item>
    <item>
      <title>Today date using Javascript</title>
      <dc:creator>Carlos Alberto</dc:creator>
      <pubDate>Thu, 13 Oct 2022 12:38:41 +0000</pubDate>
      <link>https://dev.to/charlygarcia120/today-date-using-javascript-1e19</link>
      <guid>https://dev.to/charlygarcia120/today-date-using-javascript-1e19</guid>
      <description>&lt;p&gt;How to write today date using javascript&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;html&amp;gt;
&amp;lt;body&amp;gt;
Today date is : 
&amp;lt;script&amp;gt;
var meses = new Array ("01","02","03","04","05","06","07","08","09","10","11","12");
var diasSemana = new Array("Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado");
var f=new Date();
var today = (diasSemana[f.getDay()] + ", " + f.getDate() + "/" +meses[f.getMonth()] + "/" + f.getFullYear());
document.write(today);
&amp;lt;/script&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
    </item>
    <item>
      <title>How to know if a file exists using PERL</title>
      <dc:creator>Carlos Alberto</dc:creator>
      <pubDate>Wed, 12 Oct 2022 17:42:32 +0000</pubDate>
      <link>https://dev.to/charlygarcia120/how-to-know-if-a-file-exists-using-perl-d23</link>
      <guid>https://dev.to/charlygarcia120/how-to-know-if-a-file-exists-using-perl-d23</guid>
      <description>&lt;p&gt;The follow code shows if a file exists using PERL lenguaje&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
$filename="FILEX.TXT";
if (-e $filename) {
   print "File Exists!";
} 
else
{
   print "don't exists";
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
    </item>
    <item>
      <title>how to give number format to a input box text while I am typing it</title>
      <dc:creator>Carlos Alberto</dc:creator>
      <pubDate>Tue, 29 Jun 2021 19:00:58 +0000</pubDate>
      <link>https://dev.to/charlygarcia120/how-to-give-number-format-to-a-input-box-text-while-i-am-typing-it-l19</link>
      <guid>https://dev.to/charlygarcia120/how-to-give-number-format-to-a-input-box-text-while-i-am-typing-it-l19</guid>
      <description>&lt;br&gt;&lt;br&gt;
    &amp;lt;br&amp;gt;&lt;br&gt;
        function format_num(id) {&amp;lt;br&amp;gt;&lt;br&gt;
            var number = document.getElementById(&amp;amp;quot;principal&amp;amp;quot;).value;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;
            var checkedNew = number.split(&amp;amp;#39;.&amp;amp;#39;).join(&amp;amp;quot;&amp;amp;quot;);&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;
            document.getElementById(&amp;amp;quot;principal&amp;amp;quot;).value = checkedNew.toString().replace(/\B(?=(\d{3})+(?!\d))/g, &amp;amp;quot;.&amp;amp;quot;);&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;
        }&amp;lt;br&amp;gt;&lt;br&gt;
    &lt;br&gt;&lt;br&gt;
    &lt;br&gt;&lt;br&gt;
    &lt;br&gt;&lt;br&gt;
        &lt;br&gt;&lt;br&gt;
        &lt;br&gt;&lt;br&gt;
        &lt;br&gt;&lt;br&gt;&lt;br&gt;
    &lt;br&gt;

</description>
    </item>
    <item>
      <title>function decodes any %## encoding in the given string</title>
      <dc:creator>Carlos Alberto</dc:creator>
      <pubDate>Mon, 21 Jun 2021 22:04:26 +0000</pubDate>
      <link>https://dev.to/charlygarcia120/function-decodes-any-encoding-in-the-given-string-4gi9</link>
      <guid>https://dev.to/charlygarcia120/function-decodes-any-encoding-in-the-given-string-4gi9</guid>
      <description>&lt;p&gt;function to convert a string with special characters to  url format. This function decodes any %## encoding in the given string. Plus symbols ('+') are decoded to a space character.&lt;/p&gt;

&lt;p&gt;Use it when you need to get a utf-8 string to be handled lik a URL&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;to_utf8&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="nv"&gt;$string&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;// From http://w3.org/International/questions/qa-forms-utf-8.html&lt;/span&gt;
        &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="nb"&gt;preg_match&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'%^(?:
          [\x09\x0A\x0D\x20-\x7E]            # ASCII
        | [\xC2-\xDF][\x80-\xBF]             # non-overlong 2-byte
        | \xE0[\xA0-\xBF][\x80-\xBF]         # excluding overlongs
        | [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}  # straight 3-byte
        | \xED[\x80-\x9F][\x80-\xBF]         # excluding surrogates
        | \xF0[\x90-\xBF][\x80-\xBF]{2}      # planes 1-3
        | [\xF1-\xF3][\x80-\xBF]{3}          # planes 4-15
        | \xF4[\x80-\x8F][\x80-\xBF]{2}      # plane 16
    )*$%xs'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nv"&gt;$string&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nv"&gt;$string&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nb"&gt;iconv&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'CP1252'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'UTF-8'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nv"&gt;$string&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
    </item>
    <item>
      <title>A function in PHP for generate Ramdom strings</title>
      <dc:creator>Carlos Alberto</dc:creator>
      <pubDate>Tue, 20 Apr 2021 14:50:28 +0000</pubDate>
      <link>https://dev.to/charlygarcia120/a-function-in-php-for-generate-ramdom-strings-2eej</link>
      <guid>https://dev.to/charlygarcia120/a-function-in-php-for-generate-ramdom-strings-2eej</guid>
      <description>&lt;p&gt;If you need a function for generate ramdom strings, you can use this small fraction of code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt; &lt;span class="cp"&gt;&amp;lt;?php&lt;/span&gt;
&lt;span class="o"&gt;&amp;lt;?&lt;/span&gt;&lt;span class="n"&gt;php&lt;/span&gt;
    &lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;generateRandomString&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$length&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nv"&gt;$characters&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;'0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nv"&gt;$charactersLength&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;strlen&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$characters&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="nv"&gt;$randomString&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;''&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nv"&gt;$i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="nv"&gt;$length&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nv"&gt;$i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nv"&gt;$randomString&lt;/span&gt; &lt;span class="mf"&gt;.&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;$characters&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nb"&gt;rand&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nv"&gt;$charactersLength&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)];&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nv"&gt;$randomString&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="cp"&gt;?&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
    </item>
    <item>
      <title>How to automatically confirm a youtube channel subscription</title>
      <dc:creator>Carlos Alberto</dc:creator>
      <pubDate>Thu, 01 Apr 2021 14:34:45 +0000</pubDate>
      <link>https://dev.to/charlygarcia120/how-to-automatically-confirm-a-youtube-channel-subsciption-2gdd</link>
      <guid>https://dev.to/charlygarcia120/how-to-automatically-confirm-a-youtube-channel-subsciption-2gdd</guid>
      <description>&lt;p&gt;For make that a visitor automatically confirm a youtube channel subscription use the next code &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/user/mychannel?sub_confirmation=1" rel="noopener noreferrer"&gt;https://www.youtube.com/user/mychannel?sub_confirmation=1&lt;/a&gt; &lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to Detect Browser in PHP</title>
      <dc:creator>Carlos Alberto</dc:creator>
      <pubDate>Fri, 22 Jan 2021 20:22:17 +0000</pubDate>
      <link>https://dev.to/charlygarcia120/how-to-detect-browser-in-javascript-21hf</link>
      <guid>https://dev.to/charlygarcia120/how-to-detect-browser-in-javascript-21hf</guid>
      <description>&lt;p&gt;We will to write a function in PHP using $_SERVER['HTTP_USER_AGENT'] to detect the browser an d SO of the client&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;detect&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nx"&gt;$browser&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nf"&gt;array&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;SAFARI&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;CHROME&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;IE&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;EDGE&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;OPR&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;MOZILLA&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;NETSCAPE&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;FIREFOX&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

        &lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="k"&gt;default&lt;/span&gt; &lt;span class="nx"&gt;values&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="nx"&gt;browser&lt;/span&gt; &lt;span class="nx"&gt;an&lt;/span&gt; &lt;span class="nx"&gt;SO&lt;/span&gt;
        &lt;span class="nx"&gt;$info&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;browser&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;OTHER&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="nx"&gt;$info&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;os&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;OTHER&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

        &lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;search&lt;/span&gt; &lt;span class="nx"&gt;browser&lt;/span&gt; &lt;span class="nx"&gt;and&lt;/span&gt; &lt;span class="nx"&gt;SO&lt;/span&gt;
        &lt;span class="nf"&gt;foreach&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;$browser&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="nx"&gt;$parent&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="nx"&gt;$s&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;strpos&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;strtoupper&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;$_SERVER&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;HTTP_USER_AGENT&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]),&lt;/span&gt; &lt;span class="nx"&gt;$parent&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
            &lt;span class="nx"&gt;$f&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;$s&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nf"&gt;strlen&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;$parent&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

            &lt;span class="nx"&gt;$version&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;substr&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;$_SERVER&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;HTTP_USER_AGENT&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt; &lt;span class="nx"&gt;$f&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;15&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
            &lt;span class="nx"&gt;$version&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;preg_replace&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/[^0-9,.]/&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;''&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nx"&gt;$version&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
            &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;$s&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
            &lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="nx"&gt;$info&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;browser&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;$parent&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
                &lt;span class="nx"&gt;$info&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;version&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;$version&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
            &lt;span class="p"&gt;}&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;$info&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;My wish is that you find usefull this function , and can be used in your programs to detect Browser and SO and show diferent pages , depending of your needs&lt;/p&gt;

</description>
      <category>php</category>
      <category>browser</category>
    </item>
    <item>
      <title>IntVal() to see if an array is empty</title>
      <dc:creator>Carlos Alberto</dc:creator>
      <pubDate>Mon, 14 Dec 2020 14:46:59 +0000</pubDate>
      <link>https://dev.to/charlygarcia120/intval-to-see-if-an-array-is-empty-m52</link>
      <guid>https://dev.to/charlygarcia120/intval-to-see-if-an-array-is-empty-m52</guid>
      <description>&lt;p&gt;intval one of the most undervaluated php funtions &lt;/p&gt;

&lt;p&gt;echo intval(array());                 // 0&lt;br&gt;
echo intval(array('foo', 'bar'));     // 1&lt;/p&gt;

&lt;p&gt;Can be used to know if a array is empty, important operation for validations.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Como usar el Dhtmlx DataProccesor</title>
      <dc:creator>Carlos Alberto</dc:creator>
      <pubDate>Sat, 14 Nov 2020 15:56:19 +0000</pubDate>
      <link>https://dev.to/charlygarcia120/como-usar-el-dhtmlx-dataproccesor-bj3</link>
      <guid>https://dev.to/charlygarcia120/como-usar-el-dhtmlx-dataproccesor-bj3</guid>
      <description>&lt;p&gt;El DataProcessor es una librería muy intuitiva y programática que le permite a un componente en el cliente tener un  servidor.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/iCQbhuijK38"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;No sólo simplifica el trabajo con el lado del servidor, pero también ayuda a monitorear todos los cambios de datos. Se puede utilizar con cualquier componente DHTMLX que permite la edición dentro de sí mismo. Por ejemplo, la rejilla o dataview. A partir de dhtmlxSuite 2.1, hay conectores PHP-listos para usar que se pueden utilizar en lugar de la codificación personalizada.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fyva0h1xji8ozbnf609u5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fyva0h1xji8ozbnf609u5.png" alt="Alt Text" width="654" height="342"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;DataProcessor obtiene los datos (todos los parámetros son parte de las peticiones GET o POST) por medios convencionales de comunicador cliente servidor.&lt;/p&gt;

</description>
      <category>dhtmlx</category>
      <category>dataprocesor</category>
      <category>web</category>
      <category>ajax</category>
    </item>
  </channel>
</rss>
