为了账号安全,请及时绑定邮箱和手机立即绑定

是否可以在定义变量之前引用它?

是否可以在定义变量之前引用它?

PHP
温温酱 2021-06-09 13:09:54
我正在尝试做的一个非常简化的版本:$quote = "Currently showing number $i";for($i=0;$i<100;$i++){echo $quote;}其中$ifrom$quote不断更新为新值。这又是一个简化的例子。我意识到它可以重新排序以完成相同的事情或str_replace()使用过,但对于真正的代码,它无法完成。
查看完整描述

3 回答

?
慕斯王

TA贡献1864条经验 获得超2个赞

您可以使用sprintf()/printf()它将有一个占位符,您可以动态地将值分配$i给:


$quote = "Currently showing number %u";


for($i=0;$i<100;$i++){

    printf($quote, $i);

}


查看完整回答
反对 回复 2021-06-25
?
斯蒂芬大帝

TA贡献1827条经验 获得超8个赞

这是你的答案


<?php


$quote = 'Currently showing number $i';

$pattern = '/\$([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)/';

preg_match_all($pattern, $quote, $matches);


for ($i=0; $i<100; $i++) {

    foreach ($matches[1] as $index => $valName) {

        if (isset(${$valName})) {

            $result = str_replace($matches[0][$index], ${$valName}, $quote);

        }

    }

    echo $result;

}


查看完整回答
反对 回复 2021-06-25
  • 3 回答
  • 0 关注
  • 193 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号