2013-07-09 3 views
0

У меня есть строка $ i, которая может иметь множество значений, потому что это процесс while ($ i ++).PHP Условные строковые значения

Я хочу что-то вроде этого:

if ($i == [1,2,25,48,35,68,67,59,45,43,41,25,85,49,75,16,15,14]) { 
//my function 
} 

Я не хочу писать $ я == 1 || $ i == 2 || $ i == 25 ... потому что слишком много & long.

Как я могу это сделать?

Заранее благодарен!

+1

Являются ли значения произвольными или являются их включением, определяемыми математическим уравнением? –

+1

создать массив, а не строку, а затем использовать in_array() –

+0

@adeneo почему вы удалили сообщение? ваш ответ был замечательный. Я хочу отметить его как правильный ответ. –

ответ

3

Используйте php in_array.

$os = array("Mac", "NT", "Irix", "Linux"); 
if (in_array("Irix", $os)) { 
    echo "Got Irix"; 
} 
0

Кажется немного очевидным, что вы должны более глубоко изучить документацию PHP. Существуют стандартные функции, которые могут многое сделать и помогут вам сэкономить много времени.

Вы говорите, что у вас есть строка, но показываете пример с массивом. Предполагая, что у вас действительно есть строка ввода, вы можете попробовать explode() function, чтобы взорвать ее в массив объектов.

Затем, имея реальный массив in_array() function, выполнит эту работу.

$resultString = "12 13 17 26"; 
$resultArray = explode(" ", $resultString); 
if (in_array("13", $resultArray)) { 
    echo "found"; 
} else { 
    echo "not found"; 
} 
Смежные вопросы