{"id":75287,"date":"2026-10-31T03:01:00","date_gmt":"2026-10-30T17:01:00","guid":{"rendered":"https:\/\/www.rjmprogramming.com.au\/ITblog\/?p=75287"},"modified":"2026-10-30T11:30:23","modified_gmt":"2026-10-30T01:30:23","slug":"crontab-and-curl-rearrangements-tutorial","status":"publish","type":"post","link":"https:\/\/www.rjmprogramming.com.au\/ITblog\/crontab-and-curl-rearrangements-tutorial\/","title":{"rendered":"Crontab and Curl Rearrangements Tutorial"},"content":{"rendered":"<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=\"_blank\" href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/cc_rearrangements.gif\" rel=\"noopener\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Crontab and Curl Rearrangements Primer Tutorial\" src=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/cc_rearrangements.gif\" title=\"Crontab and Curl Rearrangements Primer Tutorial\"  style=\"float:left;\"  \/><\/a><p class=\"wp-caption-text\">Crontab and Curl Rearrangements Tutorial<\/p><\/div>\n<p>The recent <a title='WordPress Javascript Coding Rearrangements Primer Tutorial' href='#wpjcrpt'>WordPress Javascript Coding Rearrangements Primer Tutorial<\/a>&#8216;s Performance Review initiatives for RJM Programming websites, particularly the PHP contributing one, left off with &#8230;<\/p>\n<blockquote><p>\nHowever, that is part one of two, to this part of the Performance Review.  Part two will be explained in days to come.\n<\/p><\/blockquote>\n<p>Well, <a target=\"_blank\" title=\"?\" href='https:\/\/www.facebook.com\/ABCKidsCommunity\/videos\/get-ready-to-play-hardtom-gleesons-back-to-host-the-popular-hard-quiz-spin-off-w\/3740483856244190\/' rel=\"noopener\">it&#8217;s <i>Days <strike>of our Lives<\/strike>To Come<\/i> time!<\/a><\/p>\n<p>Honing back into this WordPress blog&#8217;s 404.php (HTTP error 404 Not Found) intervener, and it&#8217;s penchant for using PHP&#8217;s &#8230;<\/p>\n<p><code><br \/>\n<a target=\"_blank\" title='file_get_contents' href='http:\/\/us1.php.net\/file_get_contents' rel=\"noopener\">file_get_contents<\/a><br \/>\n<\/code><\/p>\n<p> &#8230; <font size=6>a lot<\/font>, it is also that the type of content being asked regarding the first argument (ie. content source) of interest that is of interest too.  Read <a target=\"_blank\" href='https:\/\/www.google.com\/search?q=if+argument+one+for+PHP+file_get_contents+can+be+arranged+to+be+a+local+file+rather+than+a+URL+is+that+a+performance+improvement%3F&#038;rlz=1C5OZZY_en&#038;oq=if+argument+one+for+PHP+file_get_contents+can+be+arranged+to+be+a+local+file+rather+than+a+URL+is+that+a+performance+improvement%3F&#038;gs_lcrp=EgZjaHJvbWUyBggAEEUYOTIHCAEQIRiPAjIHCAIQIRiPAtIBCTY5OTc0ajBqN6gCALACAA&#038;sourceid=chrome&#038;source=chrome.ob&#038;ie=UTF-8' title='if argument one for PHP file_get_contents can be arranged to be a local file rather than a URL is that a performance improvement?' rel=\"noopener\">if argument one for PHP file_get_contents can be arranged to be a local file rather than a URL is that a performance improvement<\/a>, to see what we mean &#8230;<\/p>\n<blockquote cite='https:\/\/www.google.com\/search?q=if+argument+one+for+PHP+file_get_contents+can+be+arranged+to+be+a+local+file+rather+than+a+URL+is+that+a+performance+improvement%3F&#038;rlz=1C5OZZY_en&#038;oq=if+argument+one+for+PHP+file_get_contents+can+be+arranged+to+be+a+local+file+rather+than+a+URL+is+that+a+performance+improvement%3F&#038;gs_lcrp=EgZjaHJvbWUyBggAEEUYOTIHCAEQIRiPAjIHCAIQIRiPAtIBCTY5OTc0ajBqN6gCALACAA&#038;sourceid=chrome&#038;source=chrome.ob&#038;ie=UTF-8'><p>\nYes, reading a local file with file_get_contents() is significantly faster and more performant than fetching a URL.<br \/>\nWhen you pass a URL, PHP must perform a DNS lookup, establish a TCP connection, handle HTTP\/HTTPS overhead, and wait for the remote server to respond. A local file bypasses the entire network stack and interacts directly with the local file system.\n<\/p><\/blockquote>\n<p> &#8230; and if we lean into the overnight <a target=\"_blank\" title='crontab information from computerhope ... thanks' href='http:\/\/www.computerhope.com\/jargon\/c\/cron.htm' rel=\"noopener\">crontab<\/a> and <a target=\"_blank\" title='Linux or unix curl information from computerhope' href='http:\/\/www.computerhope.com\/unix\/curl.htm' rel=\"noopener\">curl<\/a> processing we can store as <a target=\"_blank\" href='https:\/\/www.w3schools.com\/tags\/att_global_data.asp' title='Global data attributes information from W3schools' rel=\"noopener\">global data attributes<\/a> <font size=1>(look for <i>data-img<\/i> references in PHP code below)<\/font> into our <a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/Welcome.html\" rel=\"noopener\">Landing Page<\/a> <font size=1>(and friend)<\/font> webpage tutorial dropdown elements, in their option tags, a reference URL to that tutorial&#8217;s (quite often animated GIF, these days) tutorial picture, then we can arrange 404.php to start using PHP file_get_contents with a first argument pointing at that RJM Programming Apache\/PHP\/MySql web server&#8217;s <span title='ie. local to its WordPress blog PHP software'>&#8220;local&#8221;<\/font> file that represents <font color=blue>the HTML of RJM Programming&#8217;s Landing Page<\/font> &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\n     <font color=blue>$wcontis=file_get_contents('..\/Welcome.html');<br \/>\n     if (strpos($wcontis, '?p=' . $pnumis . '&') !== false) {<br \/>\n     if (strpos(explode('&lt;option',explode('?p=' . $pnumis . '&', $wcontis)[0])[-1 + sizeof(explode('&lt;option',explode('?p=' . $pnumis . '&', $wcontis)[0]))], ' data-img=') !== false) {<br \/>\n       $thatbpc=explode(' ',explode('&gt;',explode(' data-img=',explode('&lt;option',explode('?p=' . $pnumis . '&', $wcontis)[0])[-1 + sizeof(explode('&ltloption',explode('?p=' . $pnumis . '&', $wcontis)[0]))])[1])[0])[0];<br \/>\n     }<br \/>\n     } else {<\/font><br \/>\n     <font color=purple>$thisbpc=file_get_contents('ht<\/font><font color=purple>tp:\/\/www.rjmprogramming.com.au\/ITblog\/?p=' . $pnumis, FALSE, NULL, 0, 150000);<\/font><br \/>\n     <font color=blue>}<br \/>\n     }<\/font><br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p> &#8230; rather than <font color=purple>a URL pointing to a WordPress Blog posting<\/font> to improve performance around these here parts.<\/p>\n<p>To make this happen many readers will not be surprised to learn, involved, at the heart of it, scouring the WordPress MySql database using PHP SQL queries <font size=1>(via PHP <a target=\"_blank\" title='PHP MySQLi extension information from php.net' href='https:\/\/www.php.net\/manual\/en\/book.mysqli.php' rel=\"noopener\">mysqli<\/a> extension calls)<\/font> is now <font color=green>asking for more<\/font> &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\n $res = mysqli_query($link,\"SELECT  ID, post_date, \" . $ptg . \" DATE_FORMAT(post_date,'%Y%m%d') As pdate, IfNull(post_excerpt, '') As post_excerpt, replace(post_title, ' ', LPAD(post_excerpt,13,'*')) as bpost_title<font color=green>, SUBSTRING(post_content FROM 1 FOR 500) AS ExtractString<\/font> FROM \" . $tname . \" WHERE post_status='publish' \" . $and . \" and post_title not like '%Show Tags of this Webpage%' and post_title not like '%Show Most Popular Words%' and substr(IfNull(post_excerpt, ''),1,1) >= '0' and substr(IfNull(post_excerpt, ''),1,1) <= '9' UNION SELECT  ID, post_date, \" . $ptg . \" DATE_FORMAT(post_date,'%Y%m%d') As pdate, IfNull(post_excerpt, '') As post_excerpt, 'zzz' as bpost_title<font color=green>, SUBSTRING(post_content FROM 1 FOR 500) AS ExtractString<\/font> FROM \" . $tname . \" WHERE post_status='publish' \" . $and . \" and post_title not like '%Show Tags of this Webpage%' and post_title not like '%Show Most Popular Words%' and (substr(IfNull(post_excerpt, ''),1,1) < '0' or substr(IfNull(post_excerpt, ''),1,1) > '9') ORDER BY bpost_title, post_date DESC\");<br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p> &#8230; and then referenced later on &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\n <font color=green>function massage($inh, $comph) {<br \/>\n   if (strpos($comph, ' data-img=') !== false) { \/\/ strpos($inh, ' data-img=') === false &&<br \/>\n     $outh=$inh;<br \/>\n     $comphs=explode(\" id='MyNew-\", $comph);<br \/>\n     for ($ii=1; $ii&lt;sizeof($comphs); $ii++) {<br \/>\n       if (strpos(explode('&gt;',$comphs[$ii])[0], ' data-img=') !== false) {<br \/>\n         if (strpos($outh, \" id='MyNew-\" . explode(\"'\",$comphs[$ii])[0] . \"'\") !== false) {<br \/>\n           $outh=str_replace(\" id='MyNew-\" . explode(\"'\",$comphs[$ii])[0] . \"'\", \" id='MyNew-\" . explode(\"'\",$comphs[$ii])[0] . \"' data-img=\" . explode(' data-img=',explode('&gt;',$comphs[$ii])[0])[1] . ' ', $outh);<br \/>\n         }<br \/>\n       }<br \/>\n     }<br \/>\n     return $outh;<br \/>\n   }<br \/>\n   return $inh;<br \/>\n }<\/font><br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p> &#8230; but &#8220;asking for more&#8221; for most intents and purposes once or twice a day <font size=1>(as part of our scheduled crontab\/curl <a target=\"_blank\" title='Korn Shell' href='https:\/\/en.wikipedia.org\/wiki\/KornShell' rel=\"noopener\">Korn Shell<\/a> coded overnight run<sup>s<\/sup> functionalities encapsulated in <a target=\"_blank\" href='https:\/\/www.rjmprogramming.com.au\/ITblog\/out-and-about-wordpress-blog-content-tweaks-just-with-iphone-tutorial\/' title='Out and About WordPress Blog Content Tweaks Just with iPhone Tutorial' rel=\"noopener\">Out and About WordPress Blog Content Tweaks Just with iPhone Tutorial<\/a>&#8216;s <a target=\"_blank\" href='https:\/\/www.rjmprogramming.com.au\/Mac\/iPhone\/wp_out_and_about.gif' rel=\"noopener\">animated GIF<\/a> presentation)<\/font> rather than whenever a user asked for a random tutorial picture such as happens when you click the link below, for example &#8230;<\/p>\n<p><code><br \/>\n<a target=\"_blank\" href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/500\/500\/\" rel=\"noopener\">https:\/\/www.rjmprogramming.com.au\/ITblog\/500\/500\/<\/a><br \/>\n<\/code> <\/p>\n<p>Ahhhh, more sleepful <font size=1>if this is a word<\/font> nights!<\/p>\n<p><b><i>Stop Press<\/i><\/b><\/p>\n<p>But then, there was unfinished Fred and Ginger referencing to think about, so &#8230;<\/p>\n<p><code><br \/>\n<a target=\"_blank\" title='?' href='https:\/\/www.rjmprogramming.com.au\/dIW_Ah0wg-w,LOILZ_D3aRg,sOIpGXSMa5Y,KllSjF4uCDY,n3RSlUkw9U0,06RlwN0nddQ,c08wiEyVuak,fuufFgAMkGE,RZOJoV6H2UM,sRqK-KxNLAY,mCZrbUFr3NI,PtR4cWb4HNg' rel=\"noopener\">A Fred and Ginger sing along<\/a><br \/>\n<\/code><\/p>\n<p> &#8230; may be in order?!<\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=\"_blank\" href='\/\/www.rjmprogramming.com.au\/ITblog\/crontab-and-curl-rearrangements-tutorial\/' rel=\"noopener\">Crontab and Curl Rearrangements Tutorial<\/a>.<\/p-->\n<hr>\n<p id='wpjcrpt'>Previous relevant <a target=\"_blank\" title='WordPress Javascript Coding Rearrangements Primer Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/wordpress-javascript-coding-rearrangements-primer-tutorial\/' rel=\"noopener\">WordPress Javascript Coding Rearrangements Primer Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=\"_blank\" href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/js_rearrangements.gif\" rel=\"noopener\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"WordPress Javascript Coding Rearrangements Primer Tutorial\" src=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/js_rearrangements.gif\" title=\"WordPress Javascript Coding Rearrangements Primer Tutorial\"  style=\"float:left;\"  \/><\/a><p class=\"wp-caption-text\">WordPress Javascript Coding Rearrangements Primer Tutorial<\/p><\/div>\n<p>If you are a regular reader here reading yesterday&#8217;s <a title='Window Object Function Equals Function Primer Tutorial' href='#wofefpt'>Window Object Function Equals Function Primer Tutorial<\/a>&#8216;s &#8230;<\/p>\n<blockquote cite='\/\/www.rjmprogramming.com.au\/ITblog\/window-object-function-equals-function-primer-tutorial\/'><p>\n &#8230; using <font size=1>(from within the clientside realms of the coding of this <a target=\"_blank\" title='WordPress' href='https:\/\/wordpress.org' rel=\"noopener\">WordPress.org<\/a> blog&#8217;s)<\/font> Javascript &#8230;\n<\/p><\/blockquote>\n<p> &#8230; what might have zipped through your mind could have been the connecting phrase &#8230;<\/p>\n<blockquote><p>\n &#8230; from within <font size=1>good ol&#8217;<\/font> TwentyTen theme&#8217;s header.php &#8230;\n<\/p><\/blockquote>\n<p> &#8230; or somesuch.  Because that has been <font size=5>what we normally do<\/font>.  Don&#8217;t get me wrong though, with the rearrangement idea blurb below, we <font size=5>could<\/font> persist arranging it that way <font size=1>(and if the Javascript relies on PHP, we still do)<\/font>, but that recent Performance Review we last referenced with <a target=\"_blank\" href='https:\/\/www.rjmprogramming.com.au\/ITblog\/php-mysql-wordpress-blog-apache-restart-watchdog-tutorial\/' title='PHP MySql WordPress Blog Apache Restart Watchdog Tutorial' rel=\"noopener\">PHP MySql WordPress Blog Apache Restart Watchdog Tutorial<\/a> got us to &#8220;see the light&#8221; <font ontouchmove=\"alert(this.title);\" size=1 title=\" ... but be aware using the header.php TwentyTen Theme paradigm of changes you risk it when WordPress.org upgrades and\/or WordPress.org theme upgrades are undertaken ... and if not flagged ahead you could clobber the work you've put into header.php and\/or 404.php and\/or functions.php etcetera etcetera etcetera.\">somewhat<\/font> and reorganize a bit regarding how Javascript code within this <a target=\"_blank\" title='WordPress' href='https:\/\/wordpress.org' rel=\"noopener\">WordPress.org<\/a> blog is organized.  And so, read on.<\/p>\n<p>Did you feel let down with <a target=\"_blank\" href='https:\/\/www.rjmprogramming.com.au\/ITblog\/php-mysql-wordpress-blog-performance-php-fpm-configuration-tutorial\/' title='PHP MySql WordPress Blog Performance PHP-FPM Configuration Tutorial' rel=\"noopener\">PHP MySql WordPress Blog Performance PHP-FPM Configuration Tutorial<\/a> when we said &#8230;<\/p>\n<blockquote cite='\/\/www.rjmprogramming.com.au\/ITblog\/php-mysql-wordpress-blog-performance-php-fpm-configuration-tutorial\/'>\n<table>\n<tbody>\n<tr>\n<th>Codex loop.php<\/th>\n<th>WordPress error 404 event PHP<\/th>\n<\/tr>\n<tr>\n<th>Overuse of file_get_contents<\/th>\n<th>Rearrange use of file_get_contents \u2026<br \/>passing more work to crontab\/curl overnight run<\/th>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/blockquote>\n<p> &#8230; and did not go into more detail?!  So were we, but we had to think on this <font size=6>a lot<\/font> to flesh it out, and looked into the <font size=1>often used around here<\/font> PHP function &#8230;<\/p>\n<p><code><br \/>\n<a target=\"_blank\" title='file_get_contents' href='http:\/\/us1.php.net\/file_get_contents' rel=\"noopener\">file_get_contents<\/a><br \/>\n<\/code><\/p>\n<p>To our reckoning, until recently, we&#8217;d never tried PHP file_get_contents with more than one parameter.  But, perhaps, it helps website <i>bandwidth<\/i> to start using those other <strike>parameters<\/strike>arguments <font size=1>(you say either, but we say neither &#8230; let&#8217;s call the whole thing <\/font><font size=5><span><a class=audioytplay href='https:\/\/www.youtube.com\/watch?v=LOILZ_D3aRg'>off<\/a><\/span><\/font>!)?<\/p>\n<p>Within the 404.php (HTTP Error 404 &#8220;Not Found&#8221;) PHP file_get_contents calls what was being asked content wise included all that webpage Javascript written into <font size=1>good ol&#8217;<\/font> TwentyTen theme&#8217;s header.php &#8230; ouch <font size=1>regarding bandwidth<\/font>!  And so it led us to rearrange as per &#8230;<\/p>\n<ol>\n<li>set aside Javascript that was interspersed with PHP as the Javascript we&#8217;d still keep in <font size=1>good ol&#8217;<\/font> TwentyTen theme&#8217;s header.php &#8230; but the rest, and it was considerable &#8230;<\/li>\n<li>as for the rest, it could be placed into a new external Javascript file called <a target=\"_blank\" href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/hive_off_header_php.js_GETME\" rel=\"noopener\">hive_off_header_php.js<\/a> (first draft of several, at time of writing) &#8230; called via <i>the less wordy<\/i> &#8230;<br \/>\n<code><br \/>\n&lt;script type='text\/javascript' src='\/\/www.rjmprogramming.com.au\/ITblog\/hive_off_header_php.js?rand=&lt;?php echo rand(0,1986754); ?&gt;'&gt;&lt;\/script&gt;<br \/>\n<\/code>\n<\/li>\n<\/ol>\n<p> &#8230; to, we&#8217;re thinking &#8230;<\/p>\n<ol>\n<li>potentially save on file_get_contents call website load bandwidth &#8230;<\/li>\n<li>be able to design, in 404.php, <strike>parameters<\/strike>arguments <font size=1>(you say either, but we say neither &#8230; let&#8217;s call the whole thing <\/font><font size=5><span><a class=\"audioHUHytplay\" target=\"_blank\" href='https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/karaoke_youtube_api.htm?youtubeid=LOILZ_D3aRg&#038;theNOaid=ajax&#038;theiframeNOid=myjax&#038;thebuttonNOwording=off%3Csup%20id%3D%22supajax_myjax%22%20%20data-status%3D%22%22%20style%3D%22z-index%3A599%3B%22%20data-ontouchstart%3D%22event.stopPropagation()%3B%20onsupclick(event)%3B%22%20data-onclick%3D%22event.stopPropagation()%3B%20onsupclick(event)%3B%22%20title%3D%22Right%20click%20opens%20in%20new%20window%20the%20video%20and%20audio%20but%20normal%20click%20just%20plays%20audio%20in%20place.%20%20Numerical%20only%20entry%20in%20textarea%20seeks%20that%20audio%20timing%20position.%20%20Numerical%20space%20search%20text%20does%20YouTube%20search%20of%20search%20text%20to%20create%20the%20numerical%20number%20of%20audio%20only%20YouTube%20video%20links.%20%20Eg.%207%20octopus%20anatomy%22%3E%20%F0%9F%93%BB%F0%9F%8E%B6%3C%2Fsup%3E&#038;justaJUNKudio=&#038;youtube_duration=22223.000&#038;email=&#038;emoji=on&#038;c0=on&#038;i0=0&#038;j0=22223&#038;i1=&#038;j1=&#038;i2=&#038;j2=&#038;i3=&#038;j3=&#038;i4=&#038;j4=&#038;i5=&#038;j5=&#038;i6=&#038;j6=&#038;i7=&#038;j7=&#038;i8=&#038;j8=&#038;i9=&#038;j9=&#038;i10=&#038;j10=&#038;i11=&#038;j11=&#038;i12=&#038;j12=&#038;i13=&#038;j13=&#038;i14=&#038;j14=&#038;i15=&#038;j15=&#038;i16=&#038;j16=&#038;i17=&#038;j17=&#038;i18=&#038;j18=&#038;i19=&#038;j19=&#038;i20=&#038;j20=&#038;i21=&#038;j21=&#038;i22=&#038;j22=&#038;i23=&#038;j23=&#038;i24=&#038;j24=&#038;i25=&#038;j25=&#038;i26=&#038;j26=&#038;i27=&#038;j27=&#038;i28=&#038;j28=&#038;i29=&#038;j29=' rel=\"noopener\">off<\/a><\/span><\/font>!) that are measurable and definitive <font size=1>hence the <i>150000<\/i> below)<\/font> &#8230; to end up with <font color=blue>the modified<\/font> 404.php codeline &#8230;<br \/>\n<code><br \/>\n     $thisbpc=file_get_contents('ht<font color=black>tp<\/font>:\/\/www.rjmprogramming.com.au\/ITblog\/?p=' . $pnumis<font color=blue>, FALSE, NULL, 0, 150000<\/font>);<br \/>\n<\/code>\n<\/li>\n<\/ol>\n<p>However, that is part one of two, to this part of the Performance Review.  Part two will be explained in days to come.<\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=\"_blank\" href='\/\/www.rjmprogramming.com.au\/ITblog\/wordpress-javascript-coding-rearrangements-primer-tutorial\/' rel=\"noopener\">WordPress Javascript Coding Rearrangements Primer Tutorial<\/a>.<\/p-->\n<hr>\n<p id='wofefpt'>Previous relevant <a target=\"_blank\" title='Window Object Function Equals Function Primer Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/window-object-function-equals-function-primer-tutorial\/' rel=\"noopener\">Window Object Function Equals Function Primer Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=\"_blank\" href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/oopy.gif\" rel=\"noopener\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Window Object Function Equals Function Primer Tutorial\" src=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/oopy.gif\" title=\"Window Object Function Equals Function Primer Tutorial\"  style=\"float:left;\"  \/><\/a><p class=\"wp-caption-text\">Window Object Function Equals Function Primer Tutorial<\/p><\/div>\n<p id=mytopp>In keeping with yesterday&#8217;s <a title='Web Browser Brand Roles Primer Tutorial' href='#wbbrpt'>Web Browser Brand Roles Primer Tutorial<\/a>&#8216;s <a ontouchmove=\"alert(this.title);\"  style=cursor:pointer;text-decoration:underline; href=\"#kissid#andabit=-70\" title='Keep it simple, stupid'>KISS<\/a> lead in, there&#8217;s a subtle difference between what happens with the two tabulated links below &#8230;<\/p>\n<table id=mytoptable title='2' style=width:100%;vertical-align:top; border=1>\n<tr>\n<td id=tr1tdl style='text-align:center;'><a style=cursor:pointer;text-decoration:underline; onclick=\"location.href='#kissid';\">KISS<\/a><\/td>\n<td id=tr1tdr style='text-align:center;'><a id=kissr style=cursor:pointer;text-decoration:underline; onclick=\"scrollIntoViewExactly(document.getElementById('kissid'));\">KISS<\/a><\/td>\n<\/tr>\n<tr>\n<th colspan=2 style='text-align:center;'><button style='text-align:center;outline:2px solid red;' onclick=\"document.getElementById('tr' + document.getElementById('mytoptable').title).style.display='table-row'; document.getElementById('mytoptable').title='' + eval(1 + eval('' + document.getElementById('mytoptable').title));  document.getElementById('buttwo').innerHTML=document.getElementById('buttwo').innerHTML.replace('Read on','Read on ... yes, right hand one performs our version of window.scrollTo([left],[top]) scrolling'); event.target.style.display='none';\">Read on &#8230; to see the HTML for each<\/button><\/th>\n<\/tr>\n<tr id=tr2 style=display:none;>\n<td id=tr2tdl><textarea style=width:100%;height:300px; id=ta2tdl style='text-align:center;'><a style=cursor:pointer;text-decoration:underline; onclick=\"location.href='#kissid';\">KISS<\/a><\/textarea><\/td>\n<td id=tr2tdr><textarea style=width:100%;height:300px; id=ta2tdr style='text-align:center;'><a id=kissr style=cursor:pointer;text-decoration:underline; onclick=\"scrollIntoViewExactly(document.getElementById('kissid'));\">KISS<\/a><\/textarea><\/td>\n<\/tr>\n<tr>\n<th colspan=2 style='text-align:center;'><button id=buttwo style='text-align:center;outline:2px solid yellow;' onclick=\"document.getElementById('tr' + document.getElementById('mytoptable').title).style.display='table-row'; document.getElementById('mytoptable').title='' + eval(1 + eval('' + document.getElementById('mytoptable').title)); event.target.style.display='none';\">Read on &#8230; to see an equivalent HTML showing any Javascript function is &#8220;owned&#8221; by window object<\/button><\/th>\n<\/tr>\n<tr id=tr4 style=display:none;>\n<td id=tr1tdl style='text-align:center;'><a style=cursor:pointer;text-decoration:underline; onclick=\"location.href='#kissid';\">KISS<\/a><\/td>\n<td id=tr1tdr style='text-align:center;'><a style=cursor:pointer;text-decoration:underline; onclick=\"window.scrollIntoViewExactly(document.getElementById('kissid'));\">KISS<\/a><\/td>\n<\/tr>\n<tr>\n<th colspan=2 style='text-align:center;'><button style='text-align:center;outline:2px solid green;' onclick=\"document.getElementById('tr' + document.getElementById('mytoptable').title).style.display='table-row'; document.getElementById('mytoptable').title='' + eval(1 + eval('' + document.getElementById('mytoptable').title)); if (3 == 5) { event.target.style.display='none'; } document.getElementById('myifthing').style.display='block'; document.getElementById('myifthing').src+='?x=x';  document.getElementById('mytoptable').title='3';  event.target.innerHTML+=' ... and a child iframe like ' + String.fromCodePoint(0x2264) + document.getElementById('myifthing').outerHTML.substring(1).split(String.fromCharCode(62))[0] + String.fromCodePoint(0x2265) + String.fromCodePoint(0x2264) + '\/iframe' + String.fromCodePoint(0x2265) + ' can reference back via a window.parent ...'; setTimeout(function(){ location.href='#mytopp'; }, 60000); \">Read on &#8230; and will perform the same<\/button><\/th>\n<\/tr>\n<tr id=tr3 style=display:none;>\n<td id=tr3tdl><textarea style=width:100%;height:300px; id=ta3tdl style='text-align:center;'><a style=cursor:pointer;text-decoration:underline; onclick=\"location.href='#kissid';\">KISS<\/a><\/textarea><\/td>\n<td id=tr3tdr><textarea style=width:100%;height:300px; id=ta3tdr style='text-align:center;'><a id=kissr style=cursor:pointer;text-decoration:underline; onclick=\"window.scrollIntoViewExactly(document.getElementById('kissid'));\">KISS<\/a><\/textarea><\/td>\n<\/tr>\n<\/table>\n<p> &#8230; using <font size=1>(from within the clientside realms of the coding of this <a target=\"_blank\" title='WordPress' href='https:\/\/wordpress.org' rel=\"noopener\">WordPress.org<\/a> blog&#8217;s)<\/font> Javascript &#8230;<\/p>\n<p><code><br \/>\nfunction scrollIntoViewExactly(inob) {<br \/>\n  if (document.getElementById('nest' + inob.id) || 4 == 4) {<br \/>\n\/\/  var ninob=document.getElementById('nest' + inob.id);<br \/>\n\/\/  ninob.style.width='' + inob.width + 'px';<br \/>\n\/\/  ninob.style.height='' + inob.height + 'px';<br \/>\n  \/\/inob.style.display='inline-block';<br \/>\n\/\/  ninob.style.display='inline-block';<br \/>\n\/\/  forceVerticalOverflow(ninob);<br \/>\n  \/\/document.body.style.whiteSpace='nowrap';<br \/>\n\/\/  document.body.style.overflow='scroll';\/\/ Safely sets horizontal scroll across all modern browsers<br \/>\n  var inobr=inob.getBoundingClientRect();<br \/>\n  \/\/alert('' + inobr.width + ',' + inobr.height);<br \/>\n  \/\/alert('' + document.body.scrollLeft);<br \/>\n  \/\/alert('' + eval('' + inobr.left) + ',' + eval('' + inobr.top));<br \/>\n  \/\/alert('{ left:' + Math.floor(eval('' + inobr.left) + eval('' + document.body.scrollLeft)) + ', top:' + Math.floor(eval('' + inobr.top) + eval('' + document.body.scrollTop)) +  \", behavior: 'smooth' }\");<br \/>\n\/\/  ninob.style.overflowX='scroll';<br \/>\n\/\/  ninob.style.maxWidth='' + ninob.style.width;<br \/>\n  \/\/inob.innerHTML+=' ';<br \/>\n  \/\/ninob.style.maxHeight='200px';<br \/>\n\/\/  ninob.style.overflowY='scroll';<br \/>\n\/\/  alert(ninob.outerHTML);<br \/>\n  \/\/var innardsare='{ left:' + Math.floor(eval('' + inobr.left) + eval('' + document.body.scrollLeft)) + ', top:' + Math.floor(eval('' + inobr.top) + eval('' + document.body.scrollTop)) + \", behavior: 'smooth' }\";<br \/>\n  \/\/ left: Math.floor(eval('' + inobr.left) + eval('' + document.body.scrollLeft)),<br \/>\n  var ioffis=eval(eval(screen.width - eval('' + document.getElementById('content').getBoundingClientRect().width)) \/ 2);<br \/>\n  thenx=Math.floor(eval('' + inobr.left) + eval('' + document.body.scrollLeft) + eval('' + document.body.offsetLeft) + ioffis);<br \/>\n  const innardsare = {<br \/>\n   top: eval(120 + Math.floor(eval('' + inobr.top) + eval('' + document.body.scrollTop))),<br \/>\n   behavior: 'smooth'<br \/>\n  };<br \/>\n  const xinnardsare = {<br \/>\n   left: Math.floor(eval('' + inobr.left) + eval('' + document.body.scrollLeft) + eval('' + document.body.offsetLeft) + ioffis),<br \/>\n   behavior: 'auto'<br \/>\n  };<br \/>\n  if (7 == 7) {<br \/>\n  location.href='#' + inob.id;<br \/>\n  } else {<br \/>\n\/\/  alert(isScrollable(ninob));<br \/>\n  forceVerticalOverflow(document.body);<br \/>\n  \/\/alert(isScrollable(document.body));<br \/>\n  \/\/alert(innardsare);<br \/>\n  window.scrollTo(innardsare);<br \/>\n  \/\/alert(Math.floor(eval('' + inobr.left) + eval('' + document.body.scrollLeft)));<br \/>\n  \/\/setTimeout(function(){ document.body.style.overflowX = 'auto';  document.body.scrollBy(xinnardsare); }, 8000);<br \/>\n  \/\/setTimeout(function(){ alert(thenx); document.scrollingElement.scrollLeft='' + thenx + ''; }, 8000);<br \/>\n  }<br \/>\n  setTimeout(function(){<br \/>\n  \/\/document.body.overflowX='scroll';<br \/>\n  document.body.style.cursor='progress';<br \/>\n  document.body.style.marginLeft='-' + thenx + 'px'; \/\/inob.scrollLeft=thenx;<br \/>\n  inob.setAttribute('data-cb', '25');<br \/>\n  setTimeout(countback, 1000);<br \/>\n  setTimeout(function(){<br \/>\n  document.body.style.cursor='pointer';<br \/>\n  document.body.style.marginLeft='0px'; \/\/inob.scrollLeft=thenx;<br \/>\n  }, 25000);<br \/>\n  }, 1000);<br \/>\n  if (3 == 5) {<br \/>\n  setTimeout(function(){<br \/>\n  \/\/document.body.style.whiteSpace='nowrap';<br \/>\n  \/\/document.body.style.overflow='scroll';\/\/ Safely sets horizontal scroll across all modern browsers<br \/>\nif (document.scrollingElement) {<br \/>\n    document.scrollingElement.scrollLeft = thenx;<br \/>\n} else {<br \/>\n    \/\/ Fallback for older browsers<br \/>\n    document.documentElement.scrollLeft = thenx;<br \/>\n    document.body.scrollLeft = thenx;<br \/>\n}<br \/>\n  }, 5000);<br \/>\n  }<br \/>\n  } else {<br \/>\n  window.scrollIntoView(inob);<br \/>\n  }<br \/>\n}<br \/>\n<\/code><\/p>\n<p><iframe id=myifthing src=\/About_Us.html style=display:none; onload=\" if (parent.document.getElementById('mytoptable').title == '3') { parent.focus(); setTimeout(function(){  if ('either' == 'neither') { parent.document.getElementById('kissr').click();  } else {  parent.scrollIntoViewExactly(document.getElementById('kissid')); } }, 20000); parent.document.getElementById('mytoptable').title='9';   }  \"><\/iframe><\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=\"_blank\" href='\/\/www.rjmprogramming.com.au\/ITblog\/window-object-function-equals-function-primer-tutorial\/' rel=\"noopener\">Window Object Function Equals Function Primer Tutorial<\/a>.<\/p-->\n<hr>\n<p id='wbbrpt'>Previous relevant <a target=\"_blank\" title='Web Browser Brand Roles Primer Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/web-browser-brand-roles-primer-tutorial\/' rel=\"noopener\">Web Browser Brand Roles Primer Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/Mac\/web_browser_brands.png\" rel=\"noopener\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Web Browser Brand Roles Primer Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/Mac\/web_browser_brands.png\" title=\"Web Browser Brand Roles Primer Tutorial\"  style=\"float:left;\"  \/><\/a><p class=\"wp-caption-text\">Web Browser Brand Roles Primer Tutorial<\/p><\/div>\n<p>With a job, the day to day organization can be important, and is likely to be crucial to achieving goals.<\/p>\n<p>We spend a lot of time around web browser applications, being into <span title='Information Technology'><a target=\"_blank\" title='Information Technology information from Wikipedia ... thanks' rel=\"noopener\" href=\"https:\/\/en.wikipedia.org\/wiki\/Information_technology\">I.T.<\/a><\/span> and creating web applications, in particular.<\/p>\n<p>We&#8217;ve organized <a target=\"_blank\" title=\"macOS\" href='https:\/\/www.apple.com\/au\/macos\/big-sur\/' rel=\"noopener\">macOS<\/a> <a target=\"_blank\" title='Apple MacBook Air' href='https:\/\/www.apple.com\/au\/shop\/buy-mac\/macbook-air?afid=p240%7Cgo~cmp-227560222~adg-13939512982~ad-814857539982_kwd-7005671588~dev-c~ext-~prd-~mca-~nt-search&#038;cid=aos-au-kwgo-txt-mac-mac--' rel=\"noopener\">MacBook Air<\/a> usage mainly, around one major disk folder and four brands of web browser, the folder being, for us is &#8230;<\/p>\n<p><code><br \/>\n\/Applications\/MAMP\/htdocs<br \/>\n<\/code><\/p>\n<p>Huh?!  Well, being into <a target=\"_blank\" title='PHP' href='http:\/\/php.net' rel=\"noopener\">PHP<\/a> as our &#8220;all things server&#8221; programming language, and having installed (many versions) of <a target=\"_blank\" title='MAMP for Apache\/PHP\/MySql on Mac OS X local web server' href='http:\/\/www.mamp.info' rel=\"noopener\">MAMP<\/a>, as our <a target=\"_blank\" title=\"Apache\" href='https:\/\/www.apache.org\/' rel=\"noopener\">Apache<\/a>\/PHP\/<a target=\"_blank\" title='MySql' href='https:\/\/www.mysql.com\/' rel=\"noopener\">MySql<\/a> local web server brand of choice, and by default <i>\/Applications\/MAMP\/htdocs<\/i> is MAMP&#8217;s <a target=\"_blank\" title='Document Root' href='https:\/\/httpd.apache.org\/docs\/2.4\/urlmapping.html' rel=\"noopener\">Document Root<\/a> (and defaulting to port 8888) corresponding to URL &#8230;<\/p>\n<p><code><br \/>\nht<font color=black>tp<\/font>:\/\/localhost:8888<br \/>\n<\/code><\/p>\n<p>Even with compiling language work, we&#8217;ll often use subfolders off <i>\/Applications\/MAMP\/htdocs<\/i> &#8230; working to a <span id=nestkissid><span ontouchmove=\"alert(this.title);\" id=kissid title='Keep it simple, stupid'>KISS<\/span><\/span> principle!<\/p>\n<p>Turning to <a target=\"_blank\" title='Web browser information from Wikipedia, thanks' href='https:\/\/en.wikipedia.org\/wiki\/Web_browser' rel=\"noopener\">web browsers<\/a>, the four we tabulate below are all very good products, and can all work well for you, especially on macOS, but a consideration to do with how you organize work, there is the consideration of what work life will be like if you have to, say, clear all web browser cookies and data, for instance.  As such, in the list below, we&#8217;ve organized Google Chrome and\/or Firefox as the two web browsers we can tolerate that with <font size=1>(but prefer to just clear Last Hour or Last 15 Minutes or Last 24 Hours usually)<\/font>, in our (web browser) Organization Table below &#8230;<\/p>\n<table border=1>\n<tr>\n<th><a target=\"_blank\" title='Opera web browser' href='https:\/\/www.opera.com\/?utm_campaign=%2300%20-%20WW%20-%20Search%20-%20EN%20-%20Branded&#038;utm_content=37670026502&#038;gad_source=1&#038;gad_campaignid=760394289&#038;gbraid=0AAAAADpeOdUt792idyxy2CvBAYKEueBX8&#038;gclid=Cj0KCQjwzqXQBhD2ARIsAKrIeU8pZU4NxrRNh1OGfWb1hxY8fxT8GKtq7hlItXVhcUW6hgOp_qaSaWwaAmI6EALw_wcB' rel=\"noopener\">Opera<\/a><\/th>\n<\/tr>\n<tr>\n<td>\n<ul>\n<li>RJM Programming website email &#8230; opened as this web browser&#8217;s home page<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<th><a target=\"_blank\" title=\"Safari\" href='https:\/\/www.apple.com\/au\/safari\/' rel=\"noopener\">Safari<\/a><\/th>\n<\/tr>\n<tr>\n<td>\n<ul>\n<li>RJM Programming website <a target=\"_blank\" title=\"WHM\" href='https:\/\/docs.cpanel.net\/whm\/' rel=\"noopener\">WHM<\/a> and <a target=\"_blank\" title='cPanel' href='https:\/\/docs.cpanel.net\/cpanel\/' rel=\"noopener\">cPanel<\/a> login to domain related configurations and monitoring functionality<\/li>\n<li>MAMP (opened when MacBook Air (re-)boots) based Animated GIF creation executions<\/li>\n<li><a target=\"_blank\" title='Crazy Domains' href='http:\/\/www.crazydomains.com.au' rel=\"noopener\">Crazy Domains<\/a> web hosting login to payments and Live Chat support<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<th><a target=\"_blank\" title='Firefox' href='https:\/\/www.firefox.com\/' rel=\"noopener\">Firefox<\/a><\/th>\n<\/tr>\n<tr>\n<td>\n<ul>\n<li>Web application testing for tests that need to ignore Google Chrome<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<th><a target=\"_blank\" title='Google Chrome' href='https:\/\/www.google.com\/chrome\/' rel=\"noopener\">Google Chrome<\/a><\/th>\n<\/tr>\n<tr>\n<td>\n<ul>\n<li>RJM Programming *.php <i>lately changed<\/i> list report &#8230; opened as this web browser&#8217;s home page<\/li>\n<li><a target=\"_blank\" title='Norton Safe Search' href='https:\/\/search.nortonsafesearch.com\/' rel=\"noopener\">Norton Safe Search<\/a> of RJM Programming webpage &#8230; opened also when web browser loads up<\/li>\n<li><a target=\"_blank\" title='Gmail' href='https:\/\/gmail.com' rel=\"noopener\">Gmail<\/a> via URL personal and work emails<\/li>\n<li><a target=\"_blank\" title='WordPress' href='https:\/\/wordpress.org' rel=\"noopener\">WordPress.org<\/a> blog Content Management System work<\/li>\n<li>Web application Research and Development<\/li>\n<li>Web application executions<\/li>\n<li>Web application Web Inspector debugging<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/table>\n<p>When there are jobs requiring command line needing to be seen next to a web browser rendition, macOS <a target=\"_blank\" title='MacOS Terminal desktop app' href='https:\/\/www.google.com\/search?q=macos+terminal+apple&#038;rlz=1C5CHFA_enAU973AU973&#038;oq=macos+terminal+apple&#038;aqs=chrome..69i57j0i512l4j0i22i30l5.8834j0j4&#038;sourceid=chrome&#038;ie=UTF-8' rel=\"noopener\">Terminal<\/a> application windows can easily be arranged to not overlap any web browser brand window from the list above.<\/p>\n<p>Screenshots on macOS have moved on from <font size=1>good ol&#8217;<\/font> <i title=' ... but thanks for your service'><a target=\"_blank\" title='Mac Grab' href='https:\/\/apple.fandom.com\/wiki\/Grab' rel=\"noopener\">Grab<\/a><\/i> with the very easy keyboard shortcut &#8230;<\/p>\n<p><code><br \/>\ncontrol-command-shift-3<br \/>\n<\/code><\/p>\n<p> &#8230; working really well with <font size=1>good ol&#8217; macOS version of<\/font> <a target=\"_blank\" title='Paintbrush for Mac' href='http:\/\/paintbrush.sourceforge.net\/downloads\/' rel=\"noopener\">PaintBrush<\/a>&#8216;s <i>File-&gt;New from Clipboard<\/i> functionality.  <a target=\"_blank\" title='PreView (on a Mac) information from Apple' href='https:\/\/support.apple.com\/en-us\/HT201740' rel=\"noopener\">Preview<\/a> is good for PDF creation and compilation functionality.  <a target=\"_blank\" href='http:\/\/www.gimp.org' title='Gimp, or GIMP' rel=\"noopener\">Gimp<\/a> is good for blurring and other filtering requirements.<\/p>\n<p>More and more we&#8217;ll use  <a target=\"_blank\" title='AirDrop information from Apple' href='https:\/\/support.apple.com\/en-au\/HT204144' rel=\"noopener\">AirDrop<\/a> to transfer from iPad or iPhone to the macOS MacBook Air, or use that iOS device&#8217;s Mail sharing option to download to the macOS MacBook Air <i>Downloads<\/i> folder usually, and then, usually, this will be copied to <font size=1>good ol&#8217;<\/font> <i>\/Applications\/MAMP\/htdocs<\/i> (or a subfolder off this, especially if what is copied is a *.zip file (extracted)).<\/p>\n<p><a target=\"_blank\" title='crontab information from computerhope ... thanks' href='http:\/\/www.computerhope.com\/jargon\/c\/cron.htm' rel=\"noopener\">Crontab<\/a> on the macOS MacBook Air has an &#8220;every minute&#8221; check of <font size=1>good ol&#8217;<\/font> <i>\/Applications\/MAMP\/htdocs<\/i> changed (within last minute) *.png (primarily coming out of Paintbrush File-&gt;Save As&#8230; functionality) or *.[Hh][Ee][Ii][Cc] (off iPhone or iPad Camera app usage) ready for (PHP calling of) <a target=\"_blank\" title='ImageMagick command line' href='http:\/\/www.imagemagick.org\/script\/command-line-tools.php' rel=\"noopener\">ImageMagick<\/a>&#8216;s <i>convert<\/i><sup>ion<\/sup> to versions of *.[Jj][Pp]*[Gg] images.<\/p>\n<p>Uploads to (and downloads from) the RJM Programming domain are all conducted via <a target=\"_blank\" title='sftp information from Wikipedia, thanks' href='https:\/\/en.wikipedia.org\/wiki\/SSH_File_Transfer_Protocol' rel=\"noopener\">sftp<\/a> connections using the <a target=\"_blank\" title='FileZilla sftp\/ftp' href='https:\/\/filezilla-project.org\/' rel=\"noopener\">FileZilla<\/a> macOS desktop application.<\/p>\n<p><a target=\"_blank\" href='http:\/\/www.macupdate.com\/app\/mac\/11009\/textwrangler' title='Mac TextWrangler text editor' rel=\"noopener\">TextWrangler<\/a> is our favourite text editor by a very large margin!<\/p>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d75042' onclick='var dv=document.getElementById(\"d75042\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/apache\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d75042' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d75074' onclick='var dv=document.getElementById(\"d75074\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/window\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d75074' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d75162' onclick='var dv=document.getElementById(\"d75162\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/external-javascript\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d75162' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d75287' onclick='var dv=document.getElementById(\"d75287\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/argument\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d75287' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n","protected":false},"excerpt":{"rendered":"<p>The recent WordPress Javascript Coding Rearrangements Primer Tutorial&#8216;s Performance Review initiatives for RJM Programming websites, particularly the PHP contributing one, left off with &#8230; However, that is part one of two, to this part of the Performance Review. Part two &hellip; <a href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/crontab-and-curl-rearrangements-tutorial\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,29,33,37],"tags":[3849,83,85,1885,112,2285,151,4286,234,249,270,274,284,3980,299,5732,1929,1797,409,429,3981,2761,652,5734,677,4772,716,4085,5733,717,2752,809,827,5729,5768,5520,5769,5749,915,932,993,1018,2260,3595,1080,1893,1105,1106,3716,2031,1138,5731,5730,1181,1186,1200,1252,1268,2027,5770,1319,1324,1325,1345,1397,1411,1421,1426,1456,3276,1458],"class_list":["post-75287","post","type-post","status-publish","format-standard","hentry","category-elearning","category-operating-system","category-software","category-tutorials","tag-404-php","tag-animated-gif","tag-apache","tag-argument","tag-attribute","tag-bandwidth","tag-blog","tag-clientside","tag-command-line","tag-configuration","tag-cpanel","tag-crontab","tag-curl","tag-data-attribute","tag-database-2","tag-elapsed-time","tag-error","tag-extension","tag-external-javascript","tag-file_get_contents","tag-global-data-attribute","tag-header-php","tag-javascript","tag-koen-shell","tag-korn-shell","tag-local-file","tag-log","tag-log-file","tag-logfile","tag-logging","tag-monitor","tag-monitoring","tag-mysql","tag-mysql-query","tag-mysqli","tag-overnight","tag-overnight-processing","tag-performace-review","tag-performance","tag-php","tag-processing","tag-query","tag-restart","tag-review","tag-run","tag-schedule","tag-script","tag-scripting","tag-serverside","tag-service","tag-shell","tag-slow-mysql-query","tag-slow-query","tag-speed","tag-sql","tag-stop-press","tag-terminal","tag-theme","tag-timeout","tag-ttutorial-picture","tag-tutorial","tag-twentyten","tag-twentyten-theme","tag-url","tag-watchdog","tag-web-server","tag-website","tag-whm","tag-wordpress","tag-wordpress-blog","tag-wordpress-org"],"_links":{"self":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/75287"}],"collection":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/comments?post=75287"}],"version-history":[{"count":29,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/75287\/revisions"}],"predecessor-version":[{"id":75328,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/75287\/revisions\/75328"}],"wp:attachment":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/media?parent=75287"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/categories?post=75287"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/tags?post=75287"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}