ホームページ php教程 PHP源码 在线短地址服务

在线短地址服务

May 25, 2016 pm 05:08 PM

在线短地址服务

<?php
header("Content-Type:text/html;charset=utf-8");

define(&#39;Txpath&#39;, dirname(__FILE__).&#39;/aytemp/&#39;);  //缓存目录

define(&#39;URL&#39;,&#39;http://127.0.0.4/&#39;); //程序主域名

define(&#39;ANYOUAPI&#39;,&#39;anyou&#39;);

$pageb = mima(&#39;当前页码&#39;);

$mbox = &#39;压缩后的网址:&#39;;

$MUM = new Mem();

$dangqian = $MUM -> g( $pageb);

if( !$dangqian ){
  $dangqian = 1 ;$MUM -> s( $pageb,1);
}  //当前url



if($_POST[&#39;url&#39;]){ 
$wz = mima($_POST[&#39;url&#39;]);

if($MUM -> g($wz)){ $zhi =  $MUM -> g($wz); echo  $mbox.URL.$zhi; 
}
else{$danzhi =   dechex($dangqian); $url = mima(&#39;@&#39;.$danzhi); $MUM -> s($url,$_POST[&#39;url&#39;]);
 $MUM -> s($wz,   $danzhi); 
$MUM -> j( $pageb,1);  echo   $mbox.URL.$danzhi;
$dangqian+=1;
}

}


	
if($_POST[&#39;yuan&#39;]){
		
$urlv = $MUM -> g(mima(&#39;@&#39;.$_POST[&#39;yuan&#39;]));
		
if($urlv){
$urlv = str_replace("script",&#39;&#39;,strtolower($urlv));
 
	echo &#39;还原后的网址:&#39;.$urlv ;

}else
  echo &#39;网址没有压缩&#39;;


}



function arr2file($filename, $arr=&#39;&#39;){
	if(is_array($arr)){
		$con = var_export($arr,true);
	} else{
		$con = $arr;
	}
	$con = "<?php \nreturn $con;\n";
        file_put_contents($filename, $con);
}

function mima($var){  

   $varstr = strlen($var);
   $hash = md5(md5(base64_encode($var.&#39;13yd~!@#$%^&*(){}[1500]&#39;).$varstr));
   return substr($hash,6,16);
	 
 }


function p(){
	 $args=func_get_args();
	 if(count($args)<1) return;
	 echo &#39;<p style="width:100%;text-align:left"><pre class="brush:php;toolbar:false">&#39;;

	foreach($args as $arg){
		if(is_array($arg)){  
			  print_r($arg);
			  echo &#39;<br>&#39;;
		  }else if(is_string($arg)){
			echo $arg.&#39;<br>&#39;;
		  }else{
			var_dump($arg);
			echo &#39;<br>&#39;;
		  }
		}
		    echo &#39;

'; } class Mem{ //Memcache //r(名,值) 替换值 //s(名,值,时间) 设置值 //g(名) 获取值 //a(名,值,时间) 新建立值 没有就新建 有就返回 false; //d(名);删除值 //f(); 清空 //ja(名,数量);//减的数量 //j(名,数量);//加的数量 //gS();获取统计值 //gV();获得版本 private $md = null; function __construct(){ $md = new Pxhc; $this->md=$md; } public function r($key, $value){ //获取对象 return $this -> md -> replace( $key, $value); } public function s($key,$value,$time=0){ //设置值 return $this -> md -> set( $key, $value, MEMCACHE_COMPRESSED, $time); } public function g($key){ //获取值 return $this -> md -> get( $key); } public function a( $key, $value, $time=0){ return $this -> md -> add( $key, $value, MEMCACHE_COMPRESSED, $time); } public function d( $key){ //删除一个值 return $this -> md -> delete( $key); //删除一个值 } public function f(){ //清空全部flush return $this -> md -> flush(); } public function ja( $key, $num=1){ //加法运算 return $this -> md -> decrement( $key, $num); } public function j( $key, $num=1){ //减法预算 return $this -> md -> increment( $key, $num); } public function gS(){ //获取进程池中所有进程的运行系统统计 return $this -> md -> getExtendedStats(); } public function gV(){ //版本 return $this -> md -> getVersion(); } public function error(){ //判断是否开启 $stats = $this -> md -> getStats(); if( empty( $stats )) return false; else return true; } } class Pxhc{ //文本缓存 public function replace($key, $value){ //替换规则 $pat = Txpath.$key.'.php'; if(file_exists( $pat)){ arr2file( $pat,$value); return $value; } else return false; } public function add($key, $value, $num='', $time){ //如果存在 $pat = Txpath.($key).'.php'; if(file_exists( $pat)) return false; else{ arr2file( $pat,$value); return $value;} } public function increment($key,$num){ //加 条目 $pat = Txpath.urlencode($key).'.php'; if(file_exists($pat)){ $value = include $pat; $value = $value*1+$num; arr2file($pat,$value); return $value; }else return false; } public function getExtendedStats(){ $zzz = Txpath; $nums = 0; $mydir = dir($zzz); //读取配置文件 while($file = $mydir->read()){ if(($file != ".") and ($file != "..") and (strstr($file,".php"))){ $file = str_replace(".php",'',$file); $files[] = $file; $nums++; } } $mydir -> close(); $files['Nums'] = '变量数:'.$nums.'个'; return $files; } public function decrement($key,$num){ //减 条目 $pat = Txpath.$key.'.php'; if(file_exists( $pat)){ $value = include $pat; $value = $value*1-$num; arr2file($pat,$value); return $value; }else return false; } public function get($key){ //获取值 $pat = Txpath.$key.'.php'; if(file_exists($pat)){ return include $pat; }else return false; } public function delete($key){ //删除值 $pat = Txpath.urlencode($key).'.php'; if(file_exists($pat)){ unlink($pat); return true; }else return false; } public function flush(){ //删除全部 $zzz = Txpath; $mydir = dir($zzz); //读取配置文件 while($file = $mydir -> read()){ if(($file!=".") and ($file!="..")){ $files=$zzz.$file; unlink($files); } } $mydir->close(); return true; } public function set($key, $value, $ss, $time){ //设置值 $pat = Txpath.$key.'.php'; if(!is_array($value))$value="'".$value."'"; arr2file($pat,$value); return $value; } public function getVersion(){ return '0.0.1'; } } $PATHINFOS = ltrim(strtolower($_SERVER['PATH_INFO']),'/'); $urlv = $MUM -> g(mima('@'.$PATHINFOS)); if($urlv){ header('HTTP/1.1 302 Found'); header("Location: $urlv"); die; } ?>
以压缩个网址 网址压缩: 网址还原:
ログイン後にコピー

 以上就是在线短地址服务的内容,更多相关内容请关注PHP中文网(www.php.cn)!

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Laravelを使ったオンラインレストラン予約システムの開発方法 Laravelを使ったオンラインレストラン予約システムの開発方法 Nov 02, 2023 pm 01:48 PM

Laravelを使ってオンラインレストラン予約システムを開発する方法 近年、インターネットやモバイルインターネットの急速な発展に伴い、オンライン予約は現代人の生活に欠かせないものとなっています。ケータリング業界も例外ではなく、ユーザーエクスペリエンスの向上と市場シェアの拡大を目的として、オンライン予約サービスを提供するレストランが増えています。この記事では、Laravel フレームワークを使用して、シンプルだが完全に機能するオンライン レストラン予約システムを開発する方法を紹介し、読者が学習し実践しやすいように具体的なコード例を示します。環境設定 まず、必要なものは、

Windows で「サービスが応答していません」エラーを修正する方法。 Windows で「サービスが応答していません」エラーを修正する方法。 Apr 27, 2023 am 08:16 AM

NETSTART コマンドは、サービスやその他のプログラムの開始と停止に使用できる Windows の組み込みコマンドです。このコマンドの実行中に、NetHelpmsg2186 エラーが発生する場合があります。このエラーが発生したほとんどのユーザーは、NETSTARTWUAUSERV コマンドを実行して Windows Update サービスを再起動しようとします。 Windows Update サービスが無効になっているか、実行されていない場合、最新の更新プログラムを入手できないため、システムが危険にさらされる可能性があります。このエラーが発生する理由とそれを回避する方法を詳しく見てみましょう。わかった?エラー 2186 とは何ですか? Windows Update サービスは、最新の重要な更新プログラムとセキュリティ機能をインストールします

Windows 10 セキュリティ センター サービスが無効になっている場合の解決策 Windows 10 セキュリティ センター サービスが無効になっている場合の解決策 Jul 16, 2023 pm 01:17 PM

セキュリティ センター サービスは、win10 システムに組み込まれたコンピュータ保護機能であり、コンピュータのセキュリティをリアルタイムで保護できますが、一部のユーザーは、コンピュータの起動時にセキュリティ センター サービスが無効になる状況に遭遇します。方法は非常に簡単で、サービス パネルを開いて SecurityCenter 項目を見つけ、右クリックしてそのプロパティ ウィンドウを開き、スタートアップの種類を自動に設定し、[開始] をクリックしてサービスを再度開始します。 Win10 セキュリティ センター サービスが無効になっている場合の対処方法: 1. 「Win+R」を押して「操作」ウィンドウを開きます。 2. 次に、「services.msc」コマンドを入力して Enter キーを押します。 3. 次に、右側のウィンドウで「SecurityCenter」項目を見つけ、ダブルクリックしてプロパティ ウィンドウを開きます。

コマンドを使用してリモート デスクトップ接続サービスを開く方法 コマンドを使用してリモート デスクトップ接続サービスを開く方法 Dec 31, 2023 am 10:38 AM

リモート デスクトップ接続は多くのユーザーの日常生活に利便性をもたらしていますが、操作がより便利なコマンドを使用してリモート接続したいと考えている人もいます。リモート デスクトップ接続サービスは、コマンドを使用して開くことでこの問題を解決できます。リモート デスクトップ接続コマンドの設定方法: 方法 1. コマンドを実行してリモート接続します。 1. 「Win+R」を押して「ファイル名を指定して実行」を開き、「mstsc2」と入力し、「オプションの表示」をクリックします。 3. IP アドレスを入力して、「クリック」をクリックします。 "接続する"。 4. 接続中であることが表示されます。方法 2: コマンド プロンプトを介してリモート接続する 1. 「Win+R」を押して「ファイル名を指定して実行」を開き、「cmd2」と入力します。「コマンド プロンプト」に「mstsc/v:192.168.1.250/console」と入力します。

win7でオーディオサービスを有効にする方法 win7でオーディオサービスを有効にする方法 Jul 10, 2023 pm 05:13 PM

コンピュータには、さまざまなプログラムのアプリケーションをサポートする多くのシステム サービスがあります。ハードウェアの問題のトラブルシューティングを行った後、コンピューターから音が出ず、ほとんどのオーディオ サービスがオンになっていない場合、Win7 でオーディオ サービスを有効にするにはどうすればよいですか?多くの友人が混乱しているため、win7 でオーディオ サービスを有効にする方法については、以下のエディターが win7 でオーディオ サービスを有効にする方法を紹介します。 win7でオーディオサービスを有効にする方法。 1. Windows 7 システムのコンピュータのデスクトップでコンピュータを見つけ、右クリックして管理オプションを選択します。 2. 開いたコンピュータ管理インターフェイスの [サービスとアプリケーション] でサービス項目を見つけて開きます。右側のサービス インターフェイスで WindowsAudio を見つけ、ダブルクリックして変更を開きます。 4. 通常のプロジェクトに切り替え、「開始」をクリックして機能を有効にします。

Linux でサービスを再起動する正しい方法は何ですか? Linux でサービスを再起動する正しい方法は何ですか? Mar 15, 2024 am 09:09 AM

Linux でサービスを再起動する正しい方法は何ですか? Linux システムを使用していると、特定のサービスを再起動する必要がある状況がよく発生しますが、サービスの再起動時に実際にサービスが停止しない、または開始しないなどの問題が発生することがあります。したがって、サービスを再起動する正しい方法を習得することが非常に重要です。 Linux では、通常、systemctl コマンドを使用してシステム サービスを管理できます。 systemctl コマンドは systemd システム マネージャーの一部です

認証コードではロボットを止めることはできません! Google AI はぼやけたテキストを正確に識別できますが、GPT-4 は盲目のふりをして助けを求めます 認証コードではロボットを止めることはできません! Google AI はぼやけたテキストを正確に識別できますが、GPT-4 は盲目のふりをして助けを求めます Apr 12, 2023 am 09:46 AM

「最も迷惑なのは、Web サイトにログインするときにさまざまな種類の奇妙な (または変態的な) 確認コードが表示されることです。」 さて、良いニュースと悪いニュースがあります。良いニュースは、AI がこれを行ってくれるということです。私の言うことが信じられないかもしれませんが、認識の困難さが増大する 3 つの実際のケースを以下に示します。 そして、これらは「Pix2Struct」と呼ばれるモデルによって得られる答えです。 これらはすべて正確で、一字一句正確ですか?一部のネチズンは「確かに、精度は私よりも優れています。」と嘆いています。では、それをブラウザのプラグインにすることはできるのでしょうか? ?はい、一部の人は次のように言いました。これらのケースは比較的単純ですが、微調整するだけで、その効果がどれほど強力になるかは想像できません。悪い知らせは、検証コードでは間もなくロボットを停止できなくなるということです。 (危ない危ない…)どうやってやるの? Pix2St

PHP によるオンライン請求書管理システム開発ガイド PHP によるオンライン請求書管理システム開発ガイド Jun 11, 2023 am 08:38 AM

電子商取引の人気に伴い、販売と請求書を管理するためにオンライン請求書管理システムを導入する企業が増えています。オンライン請求書管理システムを開発する場合、適切なツールとテクノロジーを選択することが重要です。この記事では、PHP 言語を使用してオンライン請求書管理システムを開発する方法を紹介し、いくつかの有用な開発ガイドラインを提供します。システム要件を決定する 開発を開始する前に、オンライン請求書管理システムの特定の要件を決定する必要があります。これには、次の側面が含まれる場合があります: 請求書管理: 請求書情報の保存、照会、および編集; 顧客情報管理: 顧客の保存、照会、および編集

See all articles