2014-11-27 3 views
0

foreach 루프의 하위 문자열에서 가장 큰 숫자로 결과를 얻으려고합니다. 아래 코드는 "220px"의 부분 문자열과 "24px"의 다른 부분 문자열을 포함하는 문자열 만 다른 2 개의 문자열을 반환합니다. 변수 "220"또는 하위 문자열의 수에 관계없이 가장 높은 숫자로 반환하고 싶습니다. http://simplehtmldom.sourceforge.net/에서 "simple_html_dom.php"를 사용했습니다. 어떤 도움이라도 대단히 감사합니다.foreach 루프 결과 최대 값 얻기

<html> 
<body> 
<h2>Search</h2> 
<form method="post"> 
Search: <input type="text" name="q" value="google"/> 
<input type="submit" value="Submit"> 
</form> 

<?php 

include 'simple_html_dom.php'; 

if (isset($_POST['q'])) { 
$search = $_POST['q']; 
$html = file_get_html("http://en.wikipedia.org/wiki/$search"); 
?> 
<h2>Search results for '<?php echo $search; ?>'</h2> 
<ol> 

<?php 

foreach ($html->find('img') as $element): ?> 


<?php $photo = $element->src; 
$logo = 'Logo'; 

if(strpos($photo, $logo)) 
{ 

if (preg_match_all('/[0-9]+px/', $photo, $result)) { 
echo '<br/>'; 

$rp = trim($result[0][0],"px") .'<br/>'; 
echo $photo; 

} else { 
echo "Not found"; 
} 
} 

?>    

<?php endforeach;?> 
</ol> 
<?php 
} 

?> 
</body> 
</html> 

답변

0

Heres 귀하가 얻으려고하는 foreach에 대한 몇 가지 코드입니다.

$highest = 0; 
foreach($array as $string) { 
    $number = intval($string); 
    if($number > $highest) { 
     $highest = $number 
    } 
} 

// highest is now the highest number gotten from the strings of the foreach loop 
+0

감사합니다. 죄송합니다. 피곤했지만 미안하지만 실제로 220을 얻지 못하고 있습니다. – Oroku