在php老版本中下面这样写法会报错:array_shift里面需要一个变量

  $c = array_shift(explode(".", "地球.宇宙.太阳系.银河系"));
  var_dump($c);exit;

改成下面这种就正常了

  $b = explode(".", "地球.宇宙.太阳系.银河系");
  $c = array_shift($b);
  var_dump($c);exit;

原因是array_shift的参数是引用传值的,意思是必须要一个变量(因为变量有内存地址)。网上的朋友说:5.3以上默认只能传递具体的变量,而不能通过函数返回值。 但我在5.6试也是不行的,在7中就正常,无奈...


时光悠悠
27 声望0 粉丝