【背景】
折腾:
【已解决】将Log函数的参数改变为类似于sprintf的动态个数的可变参数
期间,需要:
处理一个数组,去掉第一个元素,将余下的元素作为数组。
arguments: 3 Argument 0 = str1=%s,num1=%d Argument 1 = hello crifan Argument 2 = 123
即:
去掉第一个arg0,把余下的arg1和arg2变成一个数组。
希望能有个arr1.pop()
就去掉第一个。
然后就剩下其他元素,即可。
【折腾过程】
1.搜:
php array operation
参考:
->
2.搜:
php array pop first
参考:
貌似是我要的。
去试试。
echo "Number of arguments: " . func_num_args() . "<br />"; for($i = 0 ; $i < func_num_args(); $i++) { echo "Argument $i = " . func_get_arg($i) . "<br />"; } $logArgList = func_get_args(); print_r("logArgList=".$logArgList."<br />"); $logArgFirst = array_shift($logArgList); print_r("logArgFirst=".$logArgFirst."<br />"); print_r("remaing logArgList=".$logArgList."<br />"); $logFormat = $logArgFirst; $logArgs = $logArgList; $logFormatedContent = vsprintf($logFormat, $logArgs); print_r("logFormatedContent=".$logFormatedContent."<br />");
结果:
arguments: 3 Argument 0 = str1=%s,num1=%d Argument 1 = hello crifan Argument 2 = 123 logArgList=Array logArgFirst=str1=%s,num1=%d remaing logArgList=Array logFormatedContent=str1=hello crifan,num1=123
也就实现了所要的效果了。
【总结】
PHP中,去掉数组array的第一个元素,并且将余下元素组成新数组,可以用:
$firstElement = array_shift($oldArr); $newArr = $oldArr;
即可,类似于pop的效果。
转载请注明:在路上 » 【已解决】PHP中去掉数组的第一个元素获取余下所有元素作为新数组