{"id":783,"date":"2015-12-22T22:48:46","date_gmt":"2015-12-22T21:48:46","guid":{"rendered":"http:\/\/www.newstechnology.eu\/it\/?p=783"},"modified":"2015-12-29T11:40:41","modified_gmt":"2015-12-29T10:40:41","slug":"funzione-per-pingare-un-ip-o-un-host-con-php","status":"publish","type":"post","link":"https:\/\/www.newstechnology.eu\/it\/programmazione\/php\/funzione-per-pingare-un-ip-o-un-host-con-php.html","title":{"rendered":"Test Velocit\u00e0 di Rete &#8211; Funzione per Pingare un IP o un Host con PHP"},"content":{"rendered":"<p>La funzione di ping di un IP o di un Host \u00e8 fondamentale se si deve <strong>sondare lo stato di una rete<\/strong> o la <strong>velocit\u00e0 di comunicazione<\/strong> tra due clients o tra due server.<\/p>\n<p>Spesso \u00e8 necessario implementarla in PHP per <em>verficare l&#8217;esistenza o meno di un servizio o di un server<\/em>.<\/p>\n<p><!--more--><\/p>\n<p>Questa semplice funzione pu\u00f2 pingare un hosts ad una determinata porta (per esempio potrebbe essere il servizio http quindi la porta 80).<\/p>\n<p><a href=\"http:\/\/www.newstechnology.eu\/it\/wp-content\/uploads\/2015\/12\/Ping.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-786\" src=\"http:\/\/www.newstechnology.eu\/it\/wp-content\/uploads\/2015\/12\/Ping-300x197.jpg\" alt=\"Ping\" width=\"349\" height=\"229\" srcset=\"https:\/\/www.newstechnology.eu\/it\/wp-content\/uploads\/2015\/12\/Ping-300x197.jpg 300w, https:\/\/www.newstechnology.eu\/it\/wp-content\/uploads\/2015\/12\/Ping.jpg 600w\" sizes=\"auto, (max-width: 349px) 100vw, 349px\" \/><\/a><code><\/code><\/p>\n<p>[php]<br \/>\nfunction ping($host, $port, $timeout = 2) {<br \/>\n$tStart = microtime( true );<br \/>\n$fP = @fSockOpen($host, $port, $errno, $errstr, $timeout);<br \/>\nif ( !$fP ) {<br \/>\nreturn false;<br \/>\n}<br \/>\n$tEnd = microtime(true);<br \/>\nreturn round((($tEnd &#8211; $tStart) * 1000), 4);<br \/>\n}<br \/>\n[\/php]<\/p>\n<p>La funzione restituisce un numero a 4 decimali che rappresenta la <em>velocit\u00e0 in millesecondi<\/em> che impiega la rete per rispondere. Il timeout \u00e8 impostato di default a 2 secondi.<\/p>\n<p>Pi\u00f9 millesecondi impiega e maggiore sar\u00e0 la lentenza per utilizzare quel determinato servizio.<\/p>\n<p>Una risposta false indica che il server impiega troppo tempo per rispondere o semplicemente non esiste.<\/p>\n<p>Verificare che un server sia up o down \u00e8 anche utilizzato nella programmazione parallela. Infatti lo si pu\u00f2 sfruttare la conoscenza della velocit\u00e0 di comunicazione fra due servers come parametro di scelta per individuale i migliori servers con cui dovresti comunicare per primo.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>La funzione di ping di un IP o di un Host \u00e8 fondamentale se si deve sondare lo stato di una rete o la velocit\u00e0 di comunicazione tra due clients o tra due server. Spesso \u00e8 necessario implementarla in PHP per verficare l&#8217;esistenza o meno di un servizio o di un server.<\/p>\n","protected":false},"author":1,"featured_media":786,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"wpai_meta_description":"","footnotes":""},"categories":[879],"tags":[1048,1050,1047,1046,1051,1049,1053,1052],"class_list":["post-783","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php","tag-funzione-ping-in-php","tag-millesecondi","tag-ping","tag-pingare","tag-risposta","tag-servizio","tag-velocita-comunicazione","tag-velocita-rete"],"_links":{"self":[{"href":"https:\/\/www.newstechnology.eu\/it\/wp-json\/wp\/v2\/posts\/783","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.newstechnology.eu\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.newstechnology.eu\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.newstechnology.eu\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.newstechnology.eu\/it\/wp-json\/wp\/v2\/comments?post=783"}],"version-history":[{"count":6,"href":"https:\/\/www.newstechnology.eu\/it\/wp-json\/wp\/v2\/posts\/783\/revisions"}],"predecessor-version":[{"id":800,"href":"https:\/\/www.newstechnology.eu\/it\/wp-json\/wp\/v2\/posts\/783\/revisions\/800"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.newstechnology.eu\/it\/wp-json\/wp\/v2\/media\/786"}],"wp:attachment":[{"href":"https:\/\/www.newstechnology.eu\/it\/wp-json\/wp\/v2\/media?parent=783"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.newstechnology.eu\/it\/wp-json\/wp\/v2\/categories?post=783"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.newstechnology.eu\/it\/wp-json\/wp\/v2\/tags?post=783"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}