当前位置: 首页>>代码示例>>PHP>>正文


PHP ProjectConfigurator::propReplaceProject方法代码示例

本文整理汇总了PHP中ProjectConfigurator::propReplaceProject方法的典型用法代码示例。如果您正苦于以下问题:PHP ProjectConfigurator::propReplaceProject方法的具体用法?PHP ProjectConfigurator::propReplaceProject怎么用?PHP ProjectConfigurator::propReplaceProject使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ProjectConfigurator的用法示例。


在下文中一共展示了ProjectConfigurator::propReplaceProject方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: replaceProperties

 /**
  * Replace ${} style constructions in the given value with the
  * string value of the corresponding data types. This method is
  * static.
  *
  * @param  object  $project  the project that should be used for property look-ups
  * @param  string  $value    the string to be scanned for property references
  * @param  array   $keys     property keys
  * @param  integer $logLevel the level of generated log messages
  * @return string  the replaced string or <code>null</code> if the string
  *                 itself was null
  */
 public static function replaceProperties(Project $project, $value, $keys, $logLevel = Project::MSG_VERBOSE)
 {
     if ($value === null) {
         return null;
     }
     // These are a "hack" to support static callback for preg_replace_callback()
     // make sure these get initialized every time
     self::$propReplaceProperties = $keys;
     self::$propReplaceProject = $project;
     self::$propReplaceLogLevel = $logLevel;
     // Because we're not doing anything special (like multiple passes),
     // regex is the simplest / fastest.  PropertyTask, though, uses
     // the old parsePropertyString() method, since it has more stringent
     // requirements.
     $sb = $value;
     $iteration = 0;
     // loop to recursively replace tokens
     while (strpos($sb, '${') !== false) {
         $sb = preg_replace_callback('/\\$\\{([^\\$}]+)\\}/', array('ProjectConfigurator', 'replacePropertyCallback'), $sb);
         // keep track of iterations so we can break out of otherwise infinite loops.
         $iteration++;
         if ($iteration == 5) {
             return $sb;
         }
     }
     return $sb;
 }
开发者ID:altesien,项目名称:FinalProject,代码行数:39,代码来源:ProjectConfigurator.php

示例2: replaceProperties

 /**
  * Replace ${} style constructions in the given value with the
  * string value of the corresponding data types. This method is
  * static.
  *
  * @param  object  the project that should be used for property look-ups
  * @param  string  the string to be scanned for property references
  * @param  array   proeprty keys
  * @return string  the replaced string or <code>null</code> if the string
  *                 itself was null
  */
 public static function replaceProperties(Project $project, $value, $keys)
 {
     if ($value === null) {
         return null;
     }
     // These are a "hack" to support static callback for preg_replace_callback()
     // make sure these get initialized every time
     self::$propReplaceProperties = $keys;
     self::$propReplaceProject = $project;
     // Because we're not doing anything special (like multiple passes),
     // regex is the simplest / fastest.  PropertyTask, though, uses
     // the old parsePropertyString() method, since it has more stringent
     // requirements.
     $sb = preg_replace_callback('/\\$\\{([^}]+)\\}/', array('ProjectConfigurator', 'replacePropertyCallback'), $value);
     return $sb;
 }
开发者ID:vjousse,项目名称:symfony-1.3---1.4,代码行数:27,代码来源:ProjectConfigurator.php


注:本文中的ProjectConfigurator::propReplaceProject方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。