すべてのプログラマーや開発者は、特に PHP 開発者が Web ページのコーディングやアプリケーションの作成に何時間も費やしている場合、お気に入りのコードのスニペットについて話し合うのが大好きです。コーディング時間を節約するために、著者は開発者の作業効率の向上に役立つ、より実用的なコード スニペットをいくつか集めました。 >>> クリックして PHP コード スニペット (1) を表示します
1) PHP を使用した Whois クエリ—PHP を使用して Whois リクエストを取得します
このコードを使用すると、特定のドメイン名で Whois 情報を取得できます。ドメイン名をパラメータとして取得し、すべてのドメイン名に関する情報を表示します。
-
関数 whois_query($domain) {
-
-
// ドメイン名を修正します:
-
$domain = strto lower(trim($domain));
-
$domain = preg_replace('/^http:///i', '', $domain);
-
$domain = preg_replace('/^www./i', '', $domain);
-
$domain = explode('/', $domain);
-
$domain = trim($domain[0]);
-
-
// ドメイン名から TLD を分割します
-
$_domain = explode('.', $domain);
-
$lst = count($_domain)-1;
-
$ext = $_domain[$lst];
-
-
// リソースとリストが見つかります
-
//ウィキペディアで次のように:
-
//
-
// http://de.wikipedia.org/wiki/Whois
-
//
-
$servers = array(
-
「ビジネス」 => 「whois.neulevel.biz」、
-
「com」 => 「whois.internic.net」、
-
「私たち」 => 「whois.nic.us」、
-
「コープ」 => 「whois.nic.coop」、
-
「情報」 => 「whois.nic.info」、
-
「名前」 => 「whois.nic.name」、
-
「ネット」 => 「whois.internic.net」、
-
「政府」 => 「whois.nic.gov」、
-
「教育」 => 「whois.internic.net」、
-
「ミル」 => 「rs.internic.net」、
-
"int" => 「whois.iana.org」、
-
「ac」 => 「whois.nic.ac」、
-
"ae" => 「whois.uaenic.ae」、
-
「で」 => 「whois.ripe.net」、
-
「au」 => 「whois.aunic.net」、
-
「である」 => 「whois.dns.be」、
-
"bg" => 「whois.ripe.net」、
-
"br" => 「whois.registro.br」、
-
"bz" => 「whois.belizenic.bz」、
-
「ca」 => 「whois.cira.ca」、
-
「cc」 => 「whois.nic.cc」、
-
"ch" => 「whois.nic.ch」、
-
"cl" => 「whois.nic.cl」、
-
「cn」 => 「whois.cnnic.net.cn」、
-
"cz" => 「whois.nic.cz」、
-
「で」 => 「whois.nic.de」、
-
"fr" => 「whois.nic.fr」、
-
「ふ」 => 「whois.nic.hu」、
-
「つまり」 => 「whois.domainregistry.ie」、
-
「イル」 => 「whois.isoc.org.il」、
-
「で」 => 「whois.ncst.ernet.in」、
-
「ir」 => 「whois.nic.ir」、
-
「MC」 => 「whois.ripe.net」、
-
「に」 => 「whois.tonic.to」、
-
「テレビ」 => 「whois.tv」、
-
「る」 => 「whois.ripn.net」、
-
"組織" => 「whois.pir.org」、
-
「エアロ」 => 「whois.information.aero」、
-
「nl」 => 「whois.domain-registry.nl」
-
);
-
-
if (!isset($servers[$ext])){
-
die('エラー: 一致するニックサーバーが見つかりません!');
-
}
-
-
$nic_server = $servers[$ext];
-
-
$output = '';
-
-
// whois サーバーに接続します:
-
if ($conn = fsockopen ($nic_server, 43)) {
-
fputs($conn, $domain."rn");
-
while(!feof($conn)) {
-
$output .= fgets($conn,128);
-
}
-
fclose($conn);
-
}
-
else { die('エラー: ' . $nic_server . ' に接続できませんでした!'); }
-
-
$output を返します。
-
}
2) TextMagic API を使用した PHP でのテキスト メッセージング ——TextMagic API を使用する 获取PHP テスト情報
TextMagic には高コア API が組み込まれており、SMS を携帯電話に送信できます。この API は有料です。
-
the TextMagic PHP lib
-
require('textmagic-sms-api-php/TextMagicAPI.php');
-
-
// Set the username and password information
-
$username = 'myusername';
-
$password = 'mypassword';
-
-
// Create a new instance of TM
-
$router = new TextMagicAPI(array(
-
'username' => $username,
-
'password' => $password
-
));
-
-
// Send a text message to '999-123-4567'
-
$result = $router->send('Wake up!', array(9991234567), true);
-
-
// result: Result is: Array ( [messages] => Array ( [19896128] => 9991234567 ) [sent_text] => Wake up! [parts_count] => 1 )
3) Get info about your memory usage——获取内存使用率
这段代码帮助你获取内存使用率。
-
echo "Initial: ".memory_get_usage()." bytes \n";
-
/* prints
-
Initial: 361400 bytes
-
*/
-
-
// let's use up some memory
-
for ($i = 0; $i < 100000; $i++) {
-
$array []= md5($i);
-
}
-
-
// let's remove half of the array
-
for ($i = 0; $i < 100000; $i++) {
-
unset($array[$i]);
-
}
-
-
echo "Final: ".memory_get_usage()." bytes \n";
-
/* prints
-
Final: 885912 bytes
-
*/
-
-
echo "Peak: ".memory_get_peak_usage()." bytes \n";
-
/* prints
-
Peak: 13687072 bytes
-
*/
4) Display source code of any webpage——查看任意网页源代码
如果你想查看网页源代码,那么只需更改第二行的URL,源代码就会在网页上显示出。
-
$line) {
-
// loop thru each line and prepend line numbers
-
echo "Line #{$line_num} : " . htmlspecialchars($line) . "
-
\n";
-
}
5) Create data uri’s——创建数据uri
通过使用此代码,你可以创建数据Uri,这对在HTML/CSS中嵌入图片非常有用,可帮助节省HTTP请求。
-
function data_uri($file, $mime) {
-
$contents=file_get_contents($file);
-
$base64=base64_encode($contents);
-
echo "data:$mime;base64,$base64";
-
}
6) Detect location by IP——通过IP检索出地理位置
这段代码帮助你查找特定的IP,只需在功能参数上输入IP,就可检测出位置。
-
function detect_city($ip) {
-
-
$default = 'UNKNOWN';
-
-
if (!is_string($ip) || strlen($ip) < 1 || $ip == '127.0.0.1' || $ip == 'localhost') $ip = '8.8.8.8'; $curlopt_useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)'; $url = 'http://ipinfodb.com/ip_locator.php?ip=' . urlencode($ip); $ch = curl_init(); $curl_opt = array( CURLOPT_FOLLOWLOCATION => 1,
-
CURLOPT_HEADER => 0,
-
CURLOPT_RETURNTRANSFER => 1,
-
CURLOPT_USERAGENT => $curlopt_useragent,
-
CURLOPT_URL => $url,
-
CURLOPT_TIMEOUT => 1,
-
CURLOPT_REFERER => 'http://' . $_SERVER['HTTP_HOST'],
-
);
-
-
curl_setopt_array($ch, $curl_opt);
-
-
$content = curl_exec($ch);
-
-
if (!is_null($curl_info)) {
-
$curl_info = curl_getinfo($ch);
-
}
-
-
curl_close($ch);
-
-
if ( preg_match('{
-
City : ([^<]*)
-
}i’, $content, $regs) ) { $city = $regs[1]; } if ( preg_match(‘{
-
-
State/Province : ([^<]*)
-
-
}i’, $content, $regs) ) { $state = $regs[1]; } if( $city!=” && $state!=” ){ $location = $city . ‘, ‘ . $state; return $location; }else{ return $default; } }
7) Detect browser language——查看浏览器语言
检测浏览器使用的代码脚本语言。
-
function get_client_language($availableLanguages, $default='en'){
-
if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
-
$langs=explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']);
-
-
foreach ($langs as $value){
-
$choice=substr($value,0,2);
-
if(in_array($choice, $availableLanguages)){
-
return $choice;
-
}
-
}
-
}
-
return $default;
-
}
8) Check if server is HTTPS——检测服务器是否是HTTPS
-
if ($_SERVER['HTTPS'] != "on") {
-
echo "This is not HTTPS";
-
}else{
-
echo "This is HTTPS";
-
}
9) Generate CSV file from a PHP array——在PHP数组中生成.csv 文件
-
function generateCsv($data, $delimiter = ',', $enclosure = '"') {
-
$handle = fopen('php://temp', 'r+');
-
foreach ($data as $line) {
-
fputcsv($handle, $line, $delimiter, $enclosure);
-
}
-
rewind($handle);
-
while (!feof($handle)) {
-
$contents .= fread($handle, 8192);
-
}
-
fclose($handle);
-
return $contents;
-
}
英文出自:Designzum
http://www.bkjia.com/PHPjc/742439.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/742439.htmlTechArticle每位程序员和开发者都喜欢讨论他们最爱的代码片段,尤其是当PHP开发者花费数个小时为网页编码或创建应用时,他们更知道这些代码的重...