2016-05-02 2 views
-1

У меня есть array. Сначала я хочу найти определенное значение в этом array и хочу, чтобы return, что значение с несколькими по значению. Я пытался сделать путь ниже, но таким образом, его несколько с arraykey s, но я хочу, чтобы он был несколько с array s value. Это может быть очень просто, но я не знаю решения.Умножьте значение с определенным значением массива (PHP)

<?php 

$arr = ['10','20','30','40']; 
$searching = array_search("30", $arr); 
if ($searching) { 
    $result = $searching*30; 
    echo $result; 
} 
?> 

Выход: 60

Но я хочу: 900

+1

С ручной 'array_search - поиск в массиве заданного значения и возвращает соответствующий ключ, если successful' ** Ключ ** Не ** Значение * * Если у вас есть сомнения [всегда есть руководство] (http://php.net/manual/en/ref.array.php) ___ - последнее средство, конечно, мы не хотим его выставлять___ – RiggsFolly

+1

Так что вы всегда хотите умножить на то же значение, которое вы ищете? Я имею в виду, если вы заранее знаете стоимость, чтобы умножить результат? Например. 'if (in_array ($ query, $ arr)) {echo $ query * $ query; } ' – Yoshi

+0

Какая польза? Достаточно только найти значение значения в массиве. – RomanPerekhrest

ответ

3

in_array функция поможет вам определить, если значение существует в массиве. Если оно существует - верните это значение, умноженное на другое значение.

$arr = ['10','20','30','40']; 
$search_val = 20; 
if (in_array($search_val, $arr)) { 
    echo 30 * $search_val; 
} 
4

array_search() Функция поиска в массиве значения и возвращает клавишу.

Попробуйте это:

array_search дать вам индекс, поэтому используйте $arr[$searching].

$arr = ['10','20','30','40']; 
$searching = array_search("30", $arr); 
if ($searching) { 
    $result = $arr[$searching] * 30; 
    echo $result; 
} 
0

Попробуйте: -

<?php 
$arr = ['10','20','30','40']; 
$val = 20; 
echo (in_array($val, $arr)) ? (30 * $val) : ""; 
?> 
Смежные вопросы