Maison 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; } ?>
以压缩个网址 网址压缩: 网址还原:
Copier après la connexion

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

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment développer un système de réservation de restaurant en ligne avec Laravel Comment développer un système de réservation de restaurant en ligne avec Laravel Nov 02, 2023 pm 01:48 PM

Comment utiliser Laravel pour développer un système de réservation de restaurant en ligne Ces dernières années, avec le développement rapide d'Internet et de l'Internet mobile, les réservations en ligne sont devenues un élément indispensable de la vie des gens modernes. Le secteur de la restauration ne fait pas exception. De plus en plus de restaurants commencent à proposer des services de réservation en ligne pour améliorer l'expérience utilisateur et accroître leur part de marché. Cet article présentera comment utiliser le framework Laravel pour développer un système de réservation de restaurant en ligne simple mais entièrement fonctionnel, et fournira des exemples de code spécifiques pour faciliter l'apprentissage et la pratique des lecteurs. Configuration de l'environnement Tout d'abord, nous avons besoin

Comment corriger l'erreur « Le service ne répond pas » dans Windows. Comment corriger l'erreur « Le service ne répond pas » dans Windows. Apr 27, 2023 am 08:16 AM

La commande NETSTART est une commande intégrée à Windows qui peut être utilisée pour démarrer et arrêter des services et d'autres programmes. Parfois, vous pouvez rencontrer une erreur NetHelpmsg2186 lors de l'exécution de cette commande. La plupart des utilisateurs rencontrant cette erreur tentent de redémarrer le service Windows Update en exécutant la commande NETSTARTWUAUSERV. Si le service Windows Update est désactivé ou ne fonctionne pas, votre système peut être en danger car vous ne pourrez pas obtenir les dernières mises à jour. Explorons en détail pourquoi cette erreur se produit et comment la contourner. D'accord? Qu'est-ce que l'erreur 2186 ? Le service Windows Update installe les dernières mises à jour critiques et fonctionnalités de sécurité

Solution au service Windows 10 Security Center désactivé Solution au service Windows 10 Security Center désactivé Jul 16, 2023 pm 01:17 PM

Le service Security Center est une fonction de protection informatique intégrée au système Win10, qui peut protéger la sécurité de l'ordinateur en temps réel. Cependant, certains utilisateurs rencontrent une situation dans laquelle le service Security Center est désactivé lors du démarrage de l'ordinateur. C'est très simple. Vous pouvez ouvrir le panneau de service, rechercher l'élément SecurityCenter, puis cliquer avec le bouton droit pour ouvrir sa fenêtre de propriétés, définir le type de démarrage sur automatique, puis cliquer sur Démarrer pour redémarrer le service. Que faire si le service Win10 Security Center est désactivé : 1. Appuyez sur "Win+R" pour ouvrir la fenêtre "Opération". 2. Entrez ensuite la commande "services.msc" et appuyez sur Entrée. 3. Recherchez ensuite l'élément "SecurityCenter" dans la fenêtre de droite et double-cliquez dessus pour ouvrir sa fenêtre de propriétés.

Comment ouvrir le service de connexion Bureau à distance à l'aide de la commande Comment ouvrir le service de connexion Bureau à distance à l'aide de la commande Dec 31, 2023 am 10:38 AM

La connexion au bureau à distance a apporté de la commodité à la vie quotidienne de nombreux utilisateurs. Certaines personnes souhaitent utiliser des commandes pour se connecter à distance, ce qui est plus pratique à utiliser. Alors, comment se connecter ? Le service de connexion Bureau à distance peut vous aider à résoudre ce problème en utilisant une commande pour l'ouvrir. Comment configurer la commande de connexion au bureau à distance : Méthode 1. Connectez-vous à distance en exécutant la commande 1. Appuyez sur "Win+R" pour ouvrir "Exécuter" et entrez mstsc2, puis cliquez sur "Afficher les options" 3. Entrez l'adresse IP et cliquez sur "Connecter". 4. Cela montrera qu’il est en train de se connecter. Méthode 2 : Connectez-vous à distance via l'invite de commande 1. Appuyez sur « Win+R » pour ouvrir « Exécuter » et entrez cmd2 Dans l'« Invite de commandes », entrez mstsc/v:192.168.1.250/console.

Les codes de vérification ne peuvent pas arrêter les robots ! L'IA de Google peut identifier avec précision le texte flou, tandis que GPT-4 fait semblant d'être aveugle et demande de l'aide Les codes de vérification ne peuvent pas arrêter les robots ! L'IA de Google peut identifier avec précision le texte flou, tandis que GPT-4 fait semblant d'être aveugle et demande de l'aide Apr 12, 2023 am 09:46 AM

"Le plus ennuyeux, ce sont toutes sortes de codes de vérification bizarres (voire pervertis) lorsque vous vous connectez à un site Web. Maintenant, il y a de bonnes et de mauvaises nouvelles. " La bonne nouvelle est que l’IA peut le faire pour vous. Si vous ne me croyez pas, voici trois cas réels de difficulté croissante de reconnaissance : Et voici les réponses données par un modèle appelé « Pix2Struct » : Sont-ils tous précis et mot pour mot ? Certains internautes ont déploré : Bien sûr, la précision est meilleure que la mienne. Alors, peut-il être transformé en plug-in de navigateur ? ? Oui, certaines personnes ont dit : même si ces cas sont relativement simples, si vous les ajustez simplement, je ne peux pas imaginer à quel point l'effet sera puissant. La mauvaise nouvelle est donc que le code de vérification ne pourra bientôt plus arrêter les robots ! (Danger danger danger...) Comment faire ? Pix2St

Comment activer le service audio dans Win7 Comment activer le service audio dans Win7 Jul 10, 2023 pm 05:13 PM

Les ordinateurs disposent de nombreux services système pour prendre en charge l'application de divers programmes. Si l'ordinateur n'a pas de son et que la plupart des services audio ne sont pas activés après le dépannage des problèmes matériels, comment activer les services audio dans Win7 ? De nombreux amis sont confus, donc pour la question de savoir comment activer le service audio dans Win7, l'éditeur ci-dessous vous présentera comment activer le service audio dans Win7. Comment activer le service audio dans Win7. 1. Recherchez l'ordinateur sur le bureau de l'ordinateur sous le système Windows 7, cliquez avec le bouton droit et sélectionnez l'option de gestion. 2. Recherchez et ouvrez l'élément de service sous Services et applications dans l'interface de gestion de l'ordinateur qui s'ouvre. Recherchez WindowsAudio sur l'interface du service à droite et double-cliquez pour ouvrir la modification. 4. Basculez vers le projet normal et cliquez sur Démarrer pour activer la fonction.

Quelle est la bonne façon de redémarrer un service sous Linux ? Quelle est la bonne façon de redémarrer un service sous Linux ? Mar 15, 2024 am 09:09 AM

Quelle est la bonne façon de redémarrer un service sous Linux ? Lors de l'utilisation d'un système Linux, nous rencontrons souvent des situations dans lesquelles nous devons redémarrer un certain service, mais nous pouvons parfois rencontrer des problèmes lors du redémarrage du service, comme le fait que le service ne s'arrête ou ne démarre pas réellement. Par conséquent, il est très important de maîtriser la bonne manière de redémarrer les services. Sous Linux, vous pouvez généralement utiliser la commande systemctl pour gérer les services système. La commande systemctl fait partie du gestionnaire système systemd

Guide de développement du système de gestion des factures en ligne en PHP Guide de développement du système de gestion des factures en ligne en PHP Jun 11, 2023 am 08:38 AM

Avec la popularité du commerce électronique, de plus en plus d'entreprises adoptent des systèmes de gestion des factures en ligne pour gérer leurs ventes et leurs factures. Lors du développement d’un système de gestion de factures en ligne, il est important de choisir les bons outils et technologies. Cet article présentera comment utiliser le langage PHP pour développer un système de gestion de factures en ligne et fournira quelques directives de développement utiles. Déterminer la configuration système requise Avant de commencer le développement, vous devez déterminer les exigences spécifiques de votre système de gestion des factures en ligne. Cela peut inclure les aspects suivants : Gestion des factures : enregistrement, interrogation et modification des informations sur les factures ; Gestion des informations client : enregistrement, interrogation et modification des clients ;

See all articles