Heim Web-Frontend js-Tutorial Verwendung von JavaScript zur Implementierung der URL-Code- und URL-Decode-Funktionen von PHP_Javascript-Fähigkeiten

Verwendung von JavaScript zur Implementierung der URL-Code- und URL-Decode-Funktionen von PHP_Javascript-Fähigkeiten

May 16, 2016 pm 03:45 PM
urldecode urlencode

很多朋友说JavaScript的decodeURI函数也可以实现,但有bug所有呢,下面看下下面的函数,经过测试使用暂时没什么问题,我在之前的文章说过,这个和php的urldecode函数根本不是一回事。下面是我根据高人的代码改写的JavaScript版的urldecode函数,参考的链接在开头提到的文章中有,就不一一列举了。和之前的urlencode函数一样,只实现了utf-8版的。

1、urlencode

使用方法: urlencode(str);

function urlencode(clearString) 
{
	var output = '';
	var x = 0;
	
	clearString = utf16to8(clearString.toString());
	var regex = /(^[a-zA-Z0-9-_.]*)/;

	while (x < clearString.length) 
	{
		var match = regex.exec(clearString.substr(x));
		if (match != null && match.length > 1 && match[1] != '') 
		{
			output += match[1];
			x += match[1].length;
		} 
		else 
		{
			if (clearString[x] == ' ')
				output += '+';
			else 
			{
				var charCode = clearString.charCodeAt(x);
				var hexVal = charCode.toString(16);
				output += '%' + ( hexVal.length < 2 &#63; '0' : '' ) + hexVal.toUpperCase();
			}
			x++;
		}
	}

	function utf16to8(str) 
	{
		var out, i, len, c;

		out = "";
		len = str.length;
		for(i = 0; i < len; i++) 
		{
			c = str.charCodeAt(i);
			if ((c >= 0x0001) && (c <= 0x007F)) 
			{
				out += str.charAt(i);
			} 
			else if (c > 0x07FF) 
			{
				out += String.fromCharCode(0xE0 | ((c >> 12) & 0x0F));
				out += String.fromCharCode(0x80 | ((c >> 6) & 0x3F));
				out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F));
			} 
			else 
			{
				out += String.fromCharCode(0xC0 | ((c >> 6) & 0x1F));
				out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F));
			}
		}
		return out;
	}

	return output;
}
Nach dem Login kopieren

2、urldecode

使用方法:urldecode(url);

function urldecode(encodedString)
{
	var output = encodedString;
	var binVal, thisString;
	var myregexp = /(%[^%]{2})/;
	function utf8to16(str)
	{
		var out, i, len, c;
		var char2, char3;

		out = "";
		len = str.length;
		i = 0;
		while(i < len) 
		{
			c = str.charCodeAt(i++);
			switch(c >> 4)
			{ 
				case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7:
				out += str.charAt(i-1);
				break;
				case 12: case 13:
				char2 = str.charCodeAt(i++);
				out += String.fromCharCode(((c & 0x1F) << 6) | (char2 & 0x3F));
				break;
				case 14:
				char2 = str.charCodeAt(i++);
				char3 = str.charCodeAt(i++);
				out += String.fromCharCode(((c & 0x0F) << 12) |
						((char2 & 0x3F) << 6) |
						((char3 & 0x3F) << 0));
				break;
			}
		}
		return out;
	}
	while((match = myregexp.exec(output)) != null
				&& match.length > 1
				&& match[1] != '')
	{
		binVal = parseInt(match[1].substr(1),16);
		thisString = String.fromCharCode(binVal);
		output = output.replace(match[1], thisString);
	}
	
	//output = utf8to16(output);
	output = output.replace(/\\+/g, " ");
	output = utf8to16(output);
	return output;
}
Nach dem Login kopieren

当服务器端通过php的urlencode转码的就可以使用js的urldecode进行解析即可。

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)

PHPs urldecode()-Funktion: So dekodieren Sie eine URL-kodierte Zeichenfolge in eine Rohzeichenfolge und behandeln Dekodierungsfehler PHPs urldecode()-Funktion: So dekodieren Sie eine URL-kodierte Zeichenfolge in eine Rohzeichenfolge und behandeln Dekodierungsfehler Nov 03, 2023 pm 03:17 PM

Die Funktion urldecode() von PHP wurde in PHP4 erstellt und ist eine gängige Methode zur URL-Dekodierung. Bei der URL-Kodierung handelt es sich um eine Methode zur Umwandlung nicht-englischer Zeichen in einer URL in Sonderzeichen, um die URL an den Server zu übertragen oder die URL anderweitig zu verarbeiten. Die Funktion urldecode() stellt diese Sonderzeichen in der ursprünglichen Zeichenfolge wieder her. Die Syntax dieser Funktion lautet: stringurldecode(string$str) Parameter str stellt das Zeichen dar, das dekodiert werden muss

PHPs urlencode()-Funktion: So kodieren Sie einen String in ein URL-sicheres Format PHPs urlencode()-Funktion: So kodieren Sie einen String in ein URL-sicheres Format Nov 03, 2023 pm 12:39 PM

PHPs urlencode()-Funktion: So kodieren Sie eine Zeichenfolge in ein URL-sicheres Format. Mit der Entwicklung des Internets werden URLs im täglichen Leben häufig verwendet, und wir müssen häufig Zeichenfolgen mit einigen Sonderzeichen kodieren URL-sichere Formate. Format zur Übergabe von Parametern in der URL oder zum Anfordern einer Webseite. PHP stellt die Funktion urlencode() zur Verfügung, um diese Aufgabe zu erfüllen. In diesem Artikel wird die Verwendung der Funktion urlencode() vorgestellt und einige spezifische Codebeispiele gegeben. 1. ur

So verwenden Sie die URL-Funktion zum Codieren von URLs in PHP So verwenden Sie die URL-Funktion zum Codieren von URLs in PHP Jun 26, 2023 pm 12:48 PM

In der modernen Entwicklung ist die Weitergabe von Daten über URLs eine gängige Methode. Da die URL jedoch einige Sonderzeichen wie Leerzeichen, Schrägstriche und Fragezeichen enthalten kann, zerstören diese Sonderzeichen die Struktur der URL und führen dazu, dass die Datenübertragung fehlschlägt. Um diese Situation zu vermeiden, stellt PHP die Funktion urlencode zur Verfügung, die die URL in ein transportables Format kodieren kann. Die Verwendung der URL-Funktion ist sehr einfach. Ihre Syntax lautet wie folgt: stringurlencode(string

Die Funktion urldecode() in PHP wird zum Dekodieren von URLs verwendet Die Funktion urldecode() in PHP wird zum Dekodieren von URLs verwendet Nov 18, 2023 am 10:07 AM

Die Funktion urldecode() in PHP wird verwendet, um die URL zu dekodieren und die maskierten Zeichen auf die ursprünglichen Zeichen zurückzusetzen. Bei der Verarbeitung von Parametern in der URL müssen Sie häufig die Funktion urldecode() verwenden. Die Syntax der Funktion urldecode() lautet wie folgt: stringurldecode(string$str) wobei $str die zu dekodierende URL-Zeichenfolge ist. Die Funktion urldecode() ersetzt %xx in der Zeichenfolge durch die entsprechenden Zeichen, xx

Einführung in PHP-Funktionen – urlencode(): URLs kodieren Einführung in PHP-Funktionen – urlencode(): URLs kodieren Jul 25, 2023 pm 09:25 PM

Einführung in PHP-Funktionen – urlencode(): URLs kodieren Bei der Entwicklung von Webanwendungen kommt es häufig vor, dass URLs kodiert werden müssen. Die URL-Kodierung stellt sicher, dass Sonderzeichen in URLs korrekt übergeben werden, wodurch Probleme oder falsche Ergebnisse vermieden werden. In PHP können wir die Funktion urlencode() verwenden, um eine URL-Kodierung durchzuführen. Die Funktion der Funktion urlencode() besteht darin, die Zeichenfolge in ein Codierungsformat zu konvertieren, das der URL-Spezifikation entspricht. Es konvertiert nicht-alphanumerische Zeichen in einer Zeichenfolge in

So verwenden Sie die URL-Code-Funktion So verwenden Sie die URL-Code-Funktion Nov 15, 2023 am 11:45 AM

Verwendung: 1. Wird zum Kodieren von Wörterbüchern verwendet. 3. Wird zum Kodieren von verschachtelten Listen verwendet. 4. Zum Angeben von Trennzeichen usw.

So verwenden Sie die Funktion urllib.urlencode() zum Codieren von Parametern in Python 2.x So verwenden Sie die Funktion urllib.urlencode() zum Codieren von Parametern in Python 2.x Jul 29, 2023 pm 12:57 PM

So verwenden Sie die Funktion urllib.urlencode() zum Codieren von Parametern in Python2.x. Während des Programmiervorgangs müssen wir häufig mit dem Server interagieren und Parameter übergeben. Bei der Übergabe von Parametern müssen wir die Parameter ordnungsgemäß kodieren, um die korrekte Übertragung und Analyse der Daten sicherzustellen. Python stellt die Bibliothek urllib bereit, in der die Funktion urlencode() ein Werkzeug zum Kodieren von Parametern ist. Werfen wir einen Blick auf Python2.x

So verwenden Sie die URL-Funktion zum Codieren von Sonderzeichen in PHP So verwenden Sie die URL-Funktion zum Codieren von Sonderzeichen in PHP Jun 26, 2023 pm 04:09 PM

In PHP müssen wir häufig Sonderzeichen in der URL kodieren, um Parameter korrekt zu übergeben. Zu diesem Zeitpunkt können Sie die URL-Code-Funktion verwenden. Die Funktion der URL-Code-Funktion besteht darin, Sonderzeichen in der Zeichenfolge zu kodieren, damit sie in der URL übergeben werden können. Zu diesen Sonderzeichen gehören: alphanumerische Zeichen, Satzzeichen, Protokollzeichen, einige reservierte Zeichen usw. Das Folgende ist die grundlegende Syntax der URL-Funktion: urlencode(string$str):str

See all articles