在线短地址服务
<?php header("Content-Type:text/html;charset=utf-8"); define('Txpath', dirname(__FILE__).'/aytemp/'); //缓存目录 define('URL','http://127.0.0.4/'); //程序主域名 define('ANYOUAPI','anyou'); $pageb = mima('当前页码'); $mbox = '压缩后的网址:'; $MUM = new Mem(); $dangqian = $MUM -> g( $pageb); if( !$dangqian ){ $dangqian = 1 ;$MUM -> s( $pageb,1); } //当前url if($_POST['url']){ $wz = mima($_POST['url']); if($MUM -> g($wz)){ $zhi = $MUM -> g($wz); echo $mbox.URL.$zhi; } else{$danzhi = dechex($dangqian); $url = mima('@'.$danzhi); $MUM -> s($url,$_POST['url']); $MUM -> s($wz, $danzhi); $MUM -> j( $pageb,1); echo $mbox.URL.$danzhi; $dangqian+=1; } } if($_POST['yuan']){ $urlv = $MUM -> g(mima('@'.$_POST['yuan'])); if($urlv){ $urlv = str_replace("script",'',strtolower($urlv)); echo '还原后的网址:'.$urlv ; }else echo '网址没有压缩'; } function arr2file($filename, $arr=''){ 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.'13yd~!@#$%^&*(){}[1500]').$varstr)); return substr($hash,6,16); } function p(){ $args=func_get_args(); if(count($args)<1) return; echo '<p style="width:100%;text-align:left"><pre class="brush:php;toolbar:false">'; foreach($args as $arg){ if(is_array($arg)){ print_r($arg); echo '<br>'; }else if(is_string($arg)){ echo $arg.'<br>'; }else{ var_dump($arg); echo '<br>'; } } echo ''; } 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)!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

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

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



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

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

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.

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

„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

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? 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

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
