Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.php > #3790

Re: Komplexe oder-Vergleiche optimieren

From Thomas 'PointedEars' Lahn <PointedEars@web.de>
Newsgroups de.comp.lang.php
Subject Re: Komplexe oder-Vergleiche optimieren
Date 2016-03-21 21:08 +0100
Organization PointedEars Software (PES)
Message-ID <1896233.7jEbrbfNVf@PointedEars.de> (permalink)
References (6 earlier) <nclso0$9lh$1@news.albasani.net> <ncodre$kso$1@dont-email.me> <ncojou$fch$1@news.albasani.net> <ncon39$ll3$1@dont-email.me> <ncpf1i$4un$2@news.albasani.net>

Show all headers | View raw


Klaus Ketelaer wrote:

> Am 21.03.2016 um 12:52 schrieb Torsten Zuehlsdorff:
>> On 21.03.2016 11:52, Klaus Ketelaer wrote:
>>> Am 21.03.2016 um 10:13 schrieb Torsten Zuehlsdorff:
>> Du hast genügend Probleme um nach Hilfe zu suchen. ;) Und das Throttling
>> ermöglicht es die wenigen Problemfälle ordentlich einzudämmen. :)
> 
> Weil Du mein Problem anscheinend nicht erkannt hast, hier
> noch einmal die Eingangsfrage:
> 
> <zitat>
> mit welchem Vorgehen ließe sich folgender Code am
> besten optimieren?
> 
>  […]
> 
> Es gibt so viele Wege, aber welcher bringt die beste
> Performance?
> </zitat>

Du hast ein X–Y-Problem, aber sowohl zu X als auch Y wurde Dir bereits 
geantwortet.

Als Lösung für Problem X würde ich hier entweder eine Funktion, welche über 
ein Array iteriert und abbricht, sobald ein Array-Element einer Bedingung 
genügt – etwas wie ECMAScript’s Array.prototype.some() gibt es anscheinend 
noch nicht in PHP, also schreibt man es sich schnell:

  function array_some (callable $callback, array $array1,
                       array $array2 = array())
  {
    $args = func_get_args();
    array_shift($args);

    foreach ($args as $array)
    {
      foreach ($array as $key => $value)
      {
        if ($callback($value, $key, $array))
        {
          return true;
        }
      }
    }

    return false;
  }

Und dann *sinngemäss*:

  if (array_some(function ($bot) use ($agent) {
        return strpos($agent, $bot) !== false;
      }, $bots))
  {
    /* … */
  }

–, oder *sinngemäss* das vorgeschlagene

  if (preg_match(
        '/' . implode('|', array_map(
                function ($bot) { return preg_quote($bot, '/'); }, $bots))
        . '/',
        $agent))
  {
    /* … */
  }

benutzen.

<https://tty1.net/smart-questions_de.html#examples>
<http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem>

-- 
PointedEars
Zend Certified PHP Engineer 
<http://www.zend.com/en/yellow-pages/ZEND024953> | Twitter: @PointedEars2
Please do not cc me. / Bitte keine Kopien per E-Mail.

Back to de.comp.lang.php | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Komplexe oder-Vergleiche optimieren Klaus Ketelaer <spam@spambouncer.de> - 2016-03-19 11:02 +0100
  Re: Komplexe oder-Vergleiche optimieren "Christoph M. Becker" <cmbecker69@arcor.de> - 2016-03-19 11:59 +0100
    Re: Komplexe oder-Vergleiche optimieren Klaus Ketelaer <spam@spambouncer.de> - 2016-03-19 12:23 +0100
      Re: Komplexe oder-Vergleiche optimieren Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-03-19 11:28 +0000
        Re: Komplexe oder-Vergleiche optimieren Klaus Ketelaer <spam@spambouncer.de> - 2016-03-19 12:46 +0100
          Re: Komplexe oder-Vergleiche optimieren Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-03-19 12:13 +0000
            Re: Komplexe oder-Vergleiche optimieren "Peter J. Holzer" <hjp-usenet3@hjp.at> - 2016-03-20 00:38 +0100
          Re: Komplexe oder-Vergleiche optimieren Arno Welzel <usenet@arnowelzel.de> - 2016-03-20 09:37 +0100
            Re: Komplexe oder-Vergleiche optimieren Klaus Ketelaer <spam@spambouncer.de> - 2016-03-20 11:06 +0100
              Re: Komplexe oder-Vergleiche optimieren Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-20 12:17 +0100
              Re: Komplexe oder-Vergleiche optimieren "Christoph M. Becker" <cmbecker69@arcor.de> - 2016-03-20 13:24 +0100
              Re: Komplexe oder-Vergleiche optimieren Arno Welzel <usenet@arnowelzel.de> - 2016-03-20 19:48 +0100
                Re: Komplexe oder-Vergleiche optimieren Klaus Ketelaer <spam@spambouncer.de> - 2016-03-20 20:36 +0100
                Re: Komplexe oder-Vergleiche optimieren Arno Welzel <usenet@arnowelzel.de> - 2016-03-21 01:08 +0100
              Re: Komplexe oder-Vergleiche optimieren Torsten Zuehlsdorff <foo@meisterderspiele.de> - 2016-03-21 10:13 +0100
                Re: Komplexe oder-Vergleiche optimieren Klaus Ketelaer <spam@spambouncer.de> - 2016-03-21 11:52 +0100
                Re: Komplexe oder-Vergleiche optimieren Torsten Zuehlsdorff <foo@meisterderspiele.de> - 2016-03-21 12:52 +0100
                Re: Komplexe oder-Vergleiche optimieren Klaus Ketelaer <spam@spambouncer.de> - 2016-03-21 19:37 +0100
                Re: Komplexe oder-Vergleiche optimieren Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-21 21:08 +0100
                Re: Komplexe oder-Vergleiche optimieren "Christoph M. Becker" <cmbecker69@arcor.de> - 2016-03-22 12:40 +0100
                Re: Komplexe oder-Vergleiche optimieren Robin Koch <robin.koch@t-online.de> - 2016-03-26 00:46 +0100
                Re: Komplexe oder-Vergleiche optimieren Klaus Dahlwitz <kdahlwitz@gmx.net> - 2016-03-26 06:19 +0100
                Re: Komplexe oder-Vergleiche optimieren Robin Koch <robin.koch@t-online.de> - 2016-03-26 12:31 +0100
                Re: Komplexe oder-Vergleiche optimieren Claus Reibenstein <4spamersonly@kabelmail.de> - 2016-03-26 13:21 +0100
                Re: Komplexe oder-Vergleiche optimieren "Peter J. Holzer" <hjp-usenet3@hjp.at> - 2016-03-26 14:02 +0100
                Re: Komplexe oder-Vergleiche optimieren Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-26 17:37 +0100
                Re: Komplexe oder-Vergleiche optimieren Torsten Zuehlsdorff <foo@meisterderspiele.de> - 2016-03-22 09:33 +0100
                Re: Komplexe oder-Vergleiche optimieren Thomas Meyer <ich.will@keine.mail> - 2016-03-21 13:58 +0100
                Re: Komplexe oder-Vergleiche optimieren Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-21 18:38 +0100
                Re: Komplexe oder-Vergleiche optimieren Thomas Meyer <ich.will@keine.mail> - 2016-03-21 18:45 +0100
                Re: Komplexe oder-Vergleiche optimieren Arno Welzel <usenet@arnowelzel.de> - 2016-03-21 18:59 +0100
                Re: Komplexe oder-Vergleiche optimieren Thomas Meyer <ich.will@keine.mail> - 2016-03-21 19:05 +0100
                Nervige Suchmaschinen? (was: Komplexe oder-Vergleiche optimieren) Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-21 20:30 +0100
                Re: Komplexe oder-Vergleiche optimieren Klaus Ketelaer <spam@spambouncer.de> - 2016-03-21 19:35 +0100
      Re: Komplexe oder-Vergleiche optimieren Olaf Schmitt <thesys@gmx.de> - 2016-03-22 09:28 +0100

csiph-web