Solved

make if statement more organized

Posted on 2013-02-05
9
160 Views
Last Modified: 2013-03-20
if (strpos($string1,"needle1") || strpos($string2,"needle2")) {


this can be a very long if statement

if there are more terms

is there a way to make more organized or maybe array
0
Comment
Question by:rgb192
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
9 Comments
 
LVL 110

Accepted Solution

by:
Ray Paseur earned 500 total points
ID: 38856202
Yes, you can gather the items together and use in_array()
0
 
LVL 110

Expert Comment

by:Ray Paseur
ID: 38856206
You might also be able to use switch/case logic.  Helpful if you know more or less what your data looks like and you want to choose among several alternatives.  Search the PHP.net site for "switch" to find good examples.
0
 
LVL 27

Expert Comment

by:Lukasz Chmielewski
ID: 38856416
This seems to be completely different if statements, mayb eyou can tell us more about the input and why you are searching for those values in separate strings ?
0
Secure Your WordPress Site: 5 Essential Approaches

WordPress is the web's most popular CMS, but its dominance also makes it a target for attackers. Our eBook will show you how to:

Prevent costly exploits of core and plugin vulnerabilities
Repel automated attacks
Lock down your dashboard, secure your code, and protect your users

 

Author Comment

by:rgb192
ID: 38857829
I have a list of $email_address

bob bob@aol.com
mary smith mary@yahoo.com
george@gmail.com
<rick smith> rick@verizon.net


$email_address may/may not contain $name


function emailregex($str)
{
    // A REGULAR EXPRESSION TO FIND THE FROM-EMAIL ADDRESS
    $regex
    = '#'         // REGEX DELIMITER
    . '.*?'       // ANYTHING OR NOTHING
    . '\<'        // ESCAPED WICKET
    . '(.*?)'     // GROUP OF CHARACTERS WITH EMAIL ADDRESS
    . '\>'        // ESCAPED WICKET
    . '#'         // REGEX DELIMITER
    ;


    // ISOLATE THE FROM EMAIL ADDRESS
    preg_match($regex, $str, $matches);
    return $matches;
} 

Open in new window


there are some examples where function emailregex($str) does not parse out the email properly so I want to just use the whole address and strpos

if (strpos($email_to,$email_address) || strpos($email_from,$email_address)) {
0
 
LVL 110

Expert Comment

by:Ray Paseur
ID: 38857935
...some examples where function emailregex($str) does not parse out...
SSCCE is your friend.  Please post the test data and show us what you want to get from it.  We are experts but not mind readers, and if you give us the data that you have for input and tell us the rules you want to use to acquire the output, we may very well be able to help you get from Point A to Point B.

Thanks and regards, ~Ray
0
 

Author Comment

by:rgb192
ID: 38903762
>>
...some examples where function emailregex($str) does not parse out...

I will look for the email from and email to headers where there are a different encoding than asci
0
 
LVL 110

Expert Comment

by:Ray Paseur
ID: 38903778
Please post the test data and the expected results from each test sample, thanks.  It's not rocket science -- it's simple, plodding, repetitive testing.  And to give you a good answer we need to see the test data and the expected results.  (You need to see this, too!)
0
 

Author Comment

by:rgb192
ID: 38955039
I will post the data.
sorry for delay
0
 

Author Closing Comment

by:rgb192
ID: 39004934
i think in array will work

rather than complex if statement


I still have not yet found the test data on circumstances where the parsing does not work
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article discusses how to create an extensible mechanism for linked drop downs.
3 proven steps to speed up Magento powered sites. The article focus is on optimizing time to first byte (TTFB), full page caching and configuring server for optimal performance.
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
The viewer will learn how to count occurrences of each item in an array.

729 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question