Heim 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; } ?>
以压缩个网址 网址压缩: 网址还原:
Nach dem Login kopieren

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

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So entwickeln Sie mit Laravel ein Online-Reservierungssystem für Restaurants So entwickeln Sie mit Laravel ein Online-Reservierungssystem für Restaurants Nov 02, 2023 pm 01:48 PM

So entwickeln Sie mit Laravel ein Online-Reservierungssystem für Restaurants. Mit der rasanten Entwicklung des Internets und des mobilen Internets sind Online-Reservierungen in den letzten Jahren zu einem unverzichtbaren Bestandteil des Lebens moderner Menschen geworden. Die Gastronomiebranche bildet da keine Ausnahme. Immer mehr Restaurants bieten Online-Reservierungsdienste an, um das Benutzererlebnis zu verbessern und ihren Marktanteil zu vergrößern. In diesem Artikel wird erläutert, wie Sie mit dem Laravel-Framework ein einfaches, aber voll funktionsfähiges Online-Reservierungssystem für Restaurants entwickeln, und es werden spezifische Codebeispiele bereitgestellt, um den Lesern das Lernen und Üben zu erleichtern. Umgebungseinrichtung Zuerst brauchen wir

So beheben Sie den Fehler „Dienst antwortet nicht' in Windows. So beheben Sie den Fehler „Dienst antwortet nicht' in Windows. Apr 27, 2023 am 08:16 AM

Der Befehl NETSTART ist ein in Windows integrierter Befehl, mit dem Dienste und andere Programme gestartet und gestoppt werden können. Manchmal kann beim Ausführen dieses Befehls der Fehler NetHelpmsg2186 auftreten. Die meisten Benutzer, bei denen dieser Fehler auftritt, versuchen, den Windows Update-Dienst neu zu starten, indem sie den Befehl NETSTARTWUAUSERV ausführen. Wenn der Windows Update-Dienst deaktiviert ist oder nicht ausgeführt wird, ist Ihr System möglicherweise gefährdet, da Sie nicht die neuesten Updates erhalten können. Lassen Sie uns im Detail untersuchen, warum dieser Fehler auftritt und wie Sie ihn umgehen können. OK? Was ist Fehler 2186? Der Windows Update-Dienst installiert die neuesten wichtigen Updates und Sicherheitsfunktionen

Lösung für die Deaktivierung des Windows 10 Security Center-Dienstes Lösung für die Deaktivierung des Windows 10 Security Center-Dienstes Jul 16, 2023 pm 01:17 PM

Der Security Center-Dienst ist eine integrierte Computerschutzfunktion im Win10-System, die die Computersicherheit in Echtzeit schützen kann. Einige Benutzer stoßen jedoch auf eine Situation, in der der Security Center-Dienst beim Booten des Computers deaktiviert ist. Es ist ganz einfach: Sie können das Service-Panel öffnen, das SecurityCenter-Element suchen, dann mit der rechten Maustaste darauf klicken, um dessen Eigenschaftenfenster zu öffnen, den Starttyp auf „Automatisch“ einstellen und dann auf „Starten“ klicken, um den Dienst erneut zu starten. Was tun, wenn der Win10 Security Center-Dienst deaktiviert ist: 1. Drücken Sie „Win+R“, um das Fenster „Betrieb“ zu öffnen. 2. Geben Sie dann den Befehl „services.msc“ ein und drücken Sie die Eingabetaste. 3. Suchen Sie dann im rechten Fenster nach dem Element „SecurityCenter“ und doppelklicken Sie darauf, um dessen Eigenschaftenfenster zu öffnen.

So öffnen Sie den Remotedesktopverbindungsdienst mit einem Befehl So öffnen Sie den Remotedesktopverbindungsdienst mit einem Befehl Dec 31, 2023 am 10:38 AM

Die Remote-Desktop-Verbindung hat das tägliche Leben vieler Benutzer erleichtert. Einige Leute möchten Befehle verwenden, um eine Remote-Verbindung herzustellen, was bequemer ist. Der Remotedesktopverbindungsdienst kann Ihnen bei der Lösung dieses Problems helfen, indem er einen Befehl zum Öffnen verwendet. So richten Sie den Remote-Desktop-Verbindungsbefehl ein: Methode 1. Stellen Sie eine Remote-Verbindung her, indem Sie den Befehl ausführen. 1. Drücken Sie „Win+R“, um „Ausführen“ zu öffnen, geben Sie mstsc2 ein und klicken Sie dann auf „Optionen anzeigen“. 3. Geben Sie die IP-Adresse ein und klicken Sie "Verbinden". 4. Es wird angezeigt, dass eine Verbindung hergestellt wird. Methode 2: Remote-Verbindung über die Eingabeaufforderung 1. Drücken Sie „Win+R“, um „Ausführen“ zu öffnen, und geben Sie cmd2 ein. Geben Sie in der „Eingabeaufforderung“ mstsc/v:192.168.1.250/console ein

Verifizierungscodes können Roboter nicht aufhalten! Google AI kann verschwommenen Text genau identifizieren, während GPT-4 vorgibt, blind zu sein und um Hilfe bittet Verifizierungscodes können Roboter nicht aufhalten! Google AI kann verschwommenen Text genau identifizieren, während GPT-4 vorgibt, blind zu sein und um Hilfe bittet Apr 12, 2023 am 09:46 AM

„Das Ärgerlichste sind alle möglichen seltsamen (oder sogar perversen) Bestätigungscodes, wenn man sich auf einer Website anmeldet.“ Nun gibt es gute und schlechte Nachrichten. Die gute Nachricht ist: KI kann das für Sie erledigen. Wenn Sie mir nicht glauben, hier sind drei reale Fälle von zunehmenden Erkennungsschwierigkeiten: Und das sind die Antworten, die ein Modell namens „Pix2Struct“ gibt: Sind sie alle korrekt und Wort für Wort? Einige Internetnutzer beklagten: Sicher, die Genauigkeit ist besser als meine. Kann es also in ein Browser-Plug-in umgewandelt werden? ? Ja, einige Leute sagten: Auch wenn diese Fälle relativ einfach sind, kann ich mir nicht vorstellen, wie stark der Effekt sein wird, wenn man sie nur verfeinert. Die schlechte Nachricht ist also: Der Bestätigungscode wird die Roboter bald nicht mehr stoppen können! (Gefahr Gefahr Gefahr...) Wie geht das? Pix2St

So aktivieren Sie den Audiodienst in Win7 So aktivieren Sie den Audiodienst in Win7 Jul 10, 2023 pm 05:13 PM

Computer verfügen über zahlreiche Systemdienste, die die Anwendung verschiedener Programme unterstützen. Wenn der Computer keinen Ton hat und die meisten Audiodienste nach der Behebung von Hardwareproblemen nicht aktiviert sind, wie aktivieren Sie Audiodienste in Win7? Viele Freunde sind verwirrt. Für die Frage, wie man den Audiodienst in Win7 aktiviert, stellt der Redakteur unten vor, wie man den Audiodienst in Win7 aktiviert. So aktivieren Sie den Audiodienst in Win7. 1. Suchen Sie den Computer auf dem Computerdesktop unter Windows 7, klicken Sie mit der rechten Maustaste und wählen Sie die Verwaltungsoption. 2. Suchen und öffnen Sie das Dienstelement unter „Dienste und Anwendungen“ in der Computerverwaltungsoberfläche, die sich öffnet. Suchen Sie auf der Serviceoberfläche rechts nach WindowsAudio und doppelklicken Sie, um die Änderung zu öffnen. 4. Wechseln Sie zum regulären Projekt und klicken Sie auf Start, um die Funktion zu aktivieren.

Was ist der richtige Weg, einen Dienst unter Linux neu zu starten? Was ist der richtige Weg, einen Dienst unter Linux neu zu starten? Mar 15, 2024 am 09:09 AM

Was ist der richtige Weg, einen Dienst unter Linux neu zu starten? Wenn wir ein Linux-System verwenden, stoßen wir häufig auf Situationen, in denen wir einen bestimmten Dienst neu starten müssen, aber manchmal können beim Neustart des Dienstes Probleme auftreten, z. B. wenn der Dienst nicht tatsächlich gestoppt oder gestartet wird. Daher ist es sehr wichtig, die richtige Methode zum Neustarten von Diensten zu beherrschen. Unter Linux können Sie normalerweise den Befehl systemctl verwenden, um Systemdienste zu verwalten. Der Befehl systemctl ist Teil des systemd-Systemmanagers

Online-Entwicklungshandbuch für Rechnungsverwaltungssysteme in PHP Online-Entwicklungshandbuch für Rechnungsverwaltungssysteme in PHP Jun 11, 2023 am 08:38 AM

Mit der Popularität des E-Commerce setzen immer mehr Unternehmen Online-Rechnungsverwaltungssysteme ein, um Verkäufe und Rechnungen zu verwalten. Bei der Entwicklung eines Online-Rechnungsverwaltungssystems ist es wichtig, die richtigen Tools und Technologien auszuwählen. In diesem Artikel wird die Verwendung der PHP-Sprache zur Entwicklung eines Online-Rechnungsverwaltungssystems vorgestellt und einige nützliche Entwicklungsrichtlinien bereitgestellt. Bestimmen Sie die Systemanforderungen Bevor Sie mit der Entwicklung beginnen, müssen Sie die spezifischen Anforderungen für Ihr Online-Rechnungsverwaltungssystem ermitteln. Dies kann folgende Aspekte umfassen: Rechnungsverwaltung: Speichern, Abfragen und Bearbeiten von Rechnungsinformationen; Kundeninformationsmanagement: Speichern, Abfragen und Bearbeiten von Kunden

See all articles