php - Blade::extend 函数中 $1 和 $2 的含义是什么

标签 php laravel laravel-4 laravel-blade

我在 Laravel Docs 中看到了这个例子:

Blade::extend(function($view, $compiler)
{
    $pattern = $compiler->createMatcher('datetime');
    return preg_replace($pattern, '$1<?php echo $2->format(\'m/d/Y H:i\'); ?>', $view);
});

但是我好像没看懂,有的时候网上的例子里有$3。

我没有通过 Google 搜索找到正确的答案,感谢任何帮助。

最佳答案

这是一个字符串替换!它将变量(例如 $1)替换为模式的匹配组!

例如(伪代码):

$pattern = "/(.*?)([a-z])/";
//Here is $1 ^ This group and $2 would be the second group

还有额外的帮助:

PHP regex Cheat Sheet

Online Regex tester (<- 它很好地可视化了你的正则表达式的匹配,并解释了你的正则表达式的不同部分)

关于php - Blade::extend 函数中 $1 和 $2 的含义是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28047211/

相关文章:

php - #2101 : The String passed to URLVariables. decode() 必须是包含名称/值对的 URL 编码查询字符串

php - 我在 function/vendor/guzzlehttp/psr7/src/functions.php 第 77 行的 laravel 中有错误

php - 在 MySQL/Laravel 中同时执行更新和检查重复项

php - 有没有在php中编写多个条件的快捷方式?

PHP/MongoDB : how does references work in php?

php - 数以百万计的列表映射,100GB 数据顺利显示,建议

laravel - 使用命令行界面停止 Laravel 服务器

laravel - 反射异常 : Class db does not exist

PHP - 在 MVC View 层(Laravel Blade)中使用数据库

laravel - 将 Laravel 从 4.2 升级到 5.4