2012-07-27 132 views
0

如何查找數組中元素的長度,以確保每個元素的長度超過2個字符。使用PHP是...

ex。 $ this_array =陣列( 「此」, 「和」, 「這個」, 「和」, 「TH」)

+0

您可能需要使用foreach循環。 – 2012-07-27 04:57:16

回答

1
foreach($this_array as $val) { 
    $valLength = strlen($val); //gives length 
    if($valLength < 3) { 
     //something here, less than 2 char 
    } 
} 
+1

這應該是'<3'而不是'<2'。 – Conner 2012-07-27 05:03:53

1
foreach ($this_array as $key => $value) 
{ 
    if (strlen($value) < 3) 
    { 
     echo "{$value} is too short<br />"; 
    } 
} 

參見foreach

1
foreach($this_array as $value) { 
    $strlen = strlen($value); 
    if($strlen <= 2) 
    { 
    echo '$value is '.$strlen.' characters long<br />'; 
    // do something with it 
    } 
} 
2

環接可能有點矯枉過正,除非你需要做更多的事情 - 過濾更有效。

<? 
$this_array = array("a", "this", "and", "this", "and", "th"); 

$this_array = array_filter($this_array, function($val){return strlen($val)>=2;}); 

print_r($this_array); // Array ([1] => this [2] => and [3] => this [4] => and [5] => th) 

注:這隻會在PHP 5.3+

+0

http://codepad.org/u6yLmB0o – Conner 2012-07-27 05:05:20

+0

匿名函數僅在PHP 5.3中可用。這似乎是你提供的網站使用PHP 5.2.5。 – 2012-07-27 08:30:26

0
$this_array=array ("aa", "bb", "cc", "asd", "aa");  



function lengthCheck($v, $w) 
    { 
    global $lengthOK; 
     $len= strlen($w); 
     if($len<3) 
     { 
     $lengthOK=false; 
     } 
     return $lengthOK; 
    } 


    $lengthOK=true;// set everytime when you call "lengthCheck" 
    $b = array_reduce($this_array, "lengthCheck"); 

    var_dump($b); 

$ B工作將有真/ FLASE。即如果所有元素的長度都是3或更大,則爲真,否則爲假。