php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 13.12.2006, 21:04  
Benutzer
 
Registriert seit: 26.02.2005
Beiträge: 58
Madden
Standard Kann man folgenden Code verschnellern?

Hallo Leute,

tut mir Leid euch hiermit belästigen zu müssen, aber hab grad wohl n Blackout. Mir fällt keine Funktion ein, die folgendes schneller macht:


PHP-Code:
if(!empty($_SERVER["QUERY_STRING"])) { 
    
$adv_addon "&".$_SERVER["QUERY_STRING"];
    
$adv_addon str_replace("&action=activation"""$adv_addon);
    
$adv_addon str_replace("&action=logout"""$adv_addon);
    
$adv_addon str_replace("&adv_sent=login"""$adv_addon);
    
$adv_addon str_replace("&adv_sent=registration"""$adv_addon);
    
$adv_addon str_replace("&adv_sent=profil_edit"""$adv_addon);
    
$adv_addon str_replace("&adv_sent=pass_forgotten"""$adv_addon);
    
$adv_addon str_replace("&mfolder=inbox"""$adv_addon);
    
$adv_addon str_replace("&mfolder=outbox"""$adv_addon);
    
$adv_addon str_replace("&mfolder=draft"""$adv_addon);
    
$adv_addon str_replace("&mfolder=trash"""$adv_addon);
    if(
substr_count($adv_addon,"?")==AND substr_count($adv_addon,"&")>=1) {
        
//erstes vorkommen von needle austauschen
    
}


Könnt ihr mir ein wenig helfen? Wäre super. Danke[/code]
__________________
freesms, free hosting uvm. 4 free:

>> www.msxstudios.de
Madden ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 13.12.2006, 21:36  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Was hast du vor? Leg dir doch ne Kopie des $_GET Arrays an und entfernt aus ihm die nicht benötigten Elemente. Danach setzt du alles wieder mit http_build_query() zusammen.

Abgesehen davon: str_replace() akzeptiert als 1. und/oder 2. Parameter Arrays.
Zergling-new ist offline  
Alt 14.12.2006, 10:18  
Erfahrener Benutzer
 
Benutzerbild von Andreas
 
Registriert seit: 22.04.2005
Beiträge: 391
Andreas ist zur Zeit noch ein unbeschriebenes Blatt
Standard

PHP-Code:
$_SERVER["QUERY_STRING"] = "&action=activation&adv_sent=login&adv_sent=pass_forgotten&reset=1&nocheins=true&weiter=ja";

$aUnset = array("action""adv_sent""mfolder");
$aGet     = array();
$umstaendlich true;


if(
$umstaendlich) {
    
// Umständlicher Weg?
    
parse_str($_SERVER["QUERY_STRING"], $aGet);
} else {
    
// Oder doch einfach
    
$aGet $_GET;    
}
foreach(
$aUnset as $unset_key)
    if(
array_key_exists($unset_key$aGet))
        unset(
$aGet[$unset_key]);

$newquerystring "";
foreach(
$aGet as $key => $value) {
    
$newquerystring.= ($newquerystring=="") ? "?" "&";
    
$newquerystring.= $key."=".$value;
}

echo 
$newquerystring
edit: Die Frage ist, ob das wirklich schneller ist. Eigentlich kann mans nur schneller erweitern. Das hier funzt auch mit PHP4
Andreas ist offline  
Alt 14.12.2006, 11:24  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

PHP-Code:
<?php
$aGET 
$_GET;
unset(@
$aGET['action'], @$aGET['adv_sent'], @$aGET['mfolder']);
echo 
http_build_query($aGET);
?>
Funktioniert nur PHP5.
Zergling-new ist offline  
Alt 14.12.2006, 16:29  
Erfahrener Benutzer
 
Registriert seit: 03.11.2004
Beiträge: 289
rbs_phoenix
rbs_phoenix eine Nachricht über ICQ schicken
Standard

PHP-Code:
<?php 
if(!empty($_SERVER["QUERY_STRING"])) {
$adv_addon "&".$_SERVER["QUERY_STRING"]; 

$array = array("&action=activation" => """&action=logout" => """&adv_sent=login" => """&adv_sent=registration" => """&adv_sent=profil_edit" => """&adv_sent=pass_forgotten" => """&mfolder=inbox" => """&mfolder=outbox" => """&mfolder=draft" => """&mfolder=trash" => "");

$adv_addon strtr($adv_addon$array);
if(
substr_count($adv_addon,"?")==AND substr_count($adv_addon,"&")>=1) {
        
//erstes vorkommen von needle austauschen
    
}
}
Weiß nich ob das schneller is aber müsste auch funktionieren
__________________
Homepage: http://www.rbs-page.de
rbs_phoenix ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Probleme mit PHP Code HappyDieMuschel PHP Tipps 2008 7 28.05.2008 06:34
[Erledigt] PHP Code aus Datenbank ayti PHP Tipps 2008 8 26.05.2008 19:40
Design und Code Trennen TeazY PHP Tipps 2008 29 21.05.2008 12:08
Nur bestimmten Html Code zulassen? litterauspirna PHP Tipps 2008 5 29.04.2008 12:30
einfacher Code zum Einbinden von "Inhaltsbereichen" MaxDittmann PHP-Fortgeschrittene 6 01.10.2007 15:54
[Erledigt] JS Code in PHP Code?? HTML, Usability und Barrierefreiheit 12 08.08.2005 15:45
Seite 1/2/3..Code was haltet ihr davon? Matthiasnet PHP Tipps 2005-2 4 29.07.2005 20:29
[Erledigt] Lesbarkeit von Code Off-Topic Diskussionen 6 14.07.2005 14:48
code aus db mit eval replacen chief-thomson PHP Tipps 2005-2 4 08.07.2005 15:33
fehlermeldung bei mysql_connect code PHP Tipps 2005 5 25.05.2005 22:13
Bestätigungmail code? PHP Tipps 2005 7 16.05.2005 13:18
Benutzereingaben von Formular prüfen (Sicherer Code?) PHP Tipps 2005 6 27.01.2005 10:16
code verstecken Skazi PHP Tipps 2005 4 19.01.2005 13:51
[Erledigt] bb code innerhalb von bb code geht nicht PHP Tipps 2007 2 12.01.2005 17:29
Problem mit COde PHP Tipps 2004 5 28.08.2004 16:04

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
folgenden code, code zum verschnellern der homepage, php verschnellern, codierung verschnellern, ?adv_sent

Alle Zeitangaben in WEZ +2. Es ist jetzt 13:04 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.