在php中打印自定义数组

在php中打印自定义数组,php,arrays,for-loop,range,if-statement,Php,Arrays,For Loop,Range,If Statement,如何使此代码正常工作?代码组织array2在array2中打印前2个结果,然后打印下面数组的其余部分。“有些行来自python” 我希望这个能在php中工作。这个怎么样 <?php $array1 = array("101040", "101060", "102020"); $array2 = array(101040 => "one", 101060 => "two", 102040 => "three", 102020 => "four");

如何使此代码正常工作?代码组织array2在array2中打印前2个结果,然后打印下面数组的其余部分。“有些行来自python”

我希望这个能在php中工作。

这个怎么样

<?php
    $array1 = array("101040", "101060", "102020");
    $array2 = array(101040 => "one", 101060 => "two", 102040 => "three", 102020 => "four"); 
    if (count($array1) == 0) {
      print "Array is empty.";
    } else if(count($array1) > 2) {
        asort($array1);
        print ($array2[$array1[0]]);
        print ($array2[$array1[1]]);
        for( $i = 0, $max = count($array1)-2; $i < $max; $i++) {
            print ($array2[$array1[$i+2]]);
        }
    } else {
        asort($array1);
        for( $i = 0, $max = count($array1); $i < $max; $i++) {
            print ($array2[$array1[$i]]);
        }
    }
?>


输出
onetwofour

s/strlen/count/
有效。哎呀,忘了那个。谢谢@cbuckley:)我需要它将数组中的数字从低到高排序,例如排序($array1);当我将值附加到数组1时,这将不起作用。我不太确定我是否遵循:你为什么不加上预期的结果呢?
<?php
    $array1 = array("101040", "101060", "102020");
    $array2 = array(101040 => "one", 101060 => "two", 102040 => "three", 102020 => "four"); 
    if (count($array1) == 0) {
      print "Array is empty.";
    } else if(count($array1) > 2) {
        asort($array1);
        print ($array2[$array1[0]]);
        print ($array2[$array1[1]]);
        for( $i = 0, $max = count($array1)-2; $i < $max; $i++) {
            print ($array2[$array1[$i+2]]);
        }
    } else {
        asort($array1);
        for( $i = 0, $max = count($array1); $i < $max; $i++) {
            print ($array2[$array1[$i]]);
        }
    }
?>