PHP中最短/最长的字符串数组

Mar*_*lor 34 php arrays string string-length

我有一个数组像这样

$data = array(
    "163",
    "630",
    "43",
    "924",
    "4",
    "54"
);
Run Code Online (Sandbox Code Playgroud)

我怎样才能选择最小值和最大值从它根据字符串长度不数值. (对于此示例,它是1(最小)和3(最大).

Pet*_*tai 54

好像你应该使用array_map()

  // Convert array to an array of string lengths
$lengths = array_map('strlen', $data);

  // Show min and max string length
echo "The shortest is " . min($lengths) .
     ". The longest is " . max($lengths);
Run Code Online (Sandbox Code Playgroud)

请注意,$lengths数组未排序,因此您可以轻松地为每个字符串长度检索相应的数字.

  • +1整洁.你可以做`array_map('strlen',$ data)`; (3认同)

Nul*_*ion 5

这是brian_d代码的改进版本:

$min = PHP_INT_MAX;
$max = -1;

foreach ($data as $a) {
    $length = strlen($a);
    $max = max($max, $length);
    $min = min($min, $length);
}
Run Code Online (Sandbox Code Playgroud)