[英]Using Anonymous functions in php 5.2
我知道匿名函数仅在php5.3及更高版本中受支持。
但是由于一些困难的情况,我不得不使用下面的php 5.2中的代码
有人可以帮我将其转换为在PHP 5.2中工作吗
================================================== ==
$fn = function($points) use ($pdf) {
$op = 'f';
$h = $pdf->h;
$k = $pdf->k;
$points_string = '';
for($i=0; $i < 8; $i+=2){
$points_string .= sprintf('%.2F %.2F', $points[$i]*$k,($h-$points[$i+1])*$k);
$points_string .= $i ? ' l ' : ' m ';
}
$pdf->_out($points_string . $op);
};
================================================== ==
完整代码可在以下位置获得:
我现在已经尝试使用create_function几个小时,但是可以使它正常工作。
请帮助我使它适应php5.2
还有如何复制php5.2中使用的功能
即如何将像$ pdf这样的变量传递给create_function
刚发送变量作为参数:
function fn($points, $pdf) {
$op = 'f';
$h = $pdf->h;
$k = $pdf->k;
$points_string = '';
for($i=0; $i < 8; $i+=2){
$points_string .= sprintf('%.2F %.2F', $points[$i]*$k,($h-$points[$i+1])*$k);
$points_string .= $i ? ' l ' : ' m ';
}
$pdf->_out($points_string . $op);\
};
function whatever($points, $pdf) {
$op = 'f';
$h = $pdf->h;
$k = $pdf->k;
$points_string = '';
for($i=0; $i < 8; $i+=2){
$points_string .= sprintf('%.2F %.2F', $points[$i]*$k,($h-$points[$i+1])*$k);
$points_string .= $i ? ' l ' : ' m ';
}
$pdf->_out($points_string . $op);
};
并这样称呼:
// your code
$pdf = new PdfLibraryThing();
whatever(array('thing'=>'foo','what'=>'stuff'), $pdf);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.