1

口ひげが生成した変数を実際の文字列と比較すると、奇妙な結果が表示されます。

<?php
$username = {{userName}};
echo $username; // john

 //if i compare with the string it returns false
if ($username == 'john') //return false

//if i print strlen($username) it returns 14 but it should return 4

?> 

PHPで他の文字列と比較できるように、それを通常の文字列に変換する方法は? 助けはありますか?

4

3 に答える 3

0

実際に質問に答えるのに十分なコンテキストを提供していませんが、症状から、文字列は&quot;john&quot;.

{{ foo }}エスケープされていない ( ) の代わりにエスケープされた出力 ( ) を使用していますが、{{{ foo }}}これは HTML 出力ではなく PHP にとってほぼ間違いなく間違っています。icanhaz.js についてはわかりませんが、Mustache の多くの実装では、エスケーパーをより関連性の高いものに交換できます。この場合、PHP と同等の機能を持つエスケープが必要になるでしょうvar_export()

于 2012-12-06T04:22:42.623 に答える
0

http://php.net/manual/en/function.trim.phpをトリミングするためにラップします。

口ひげが空白を追加しているように見えます。

于 2012-12-04T17:28:04.940 に答える
0

これは、これらの「口ひげ」変数が PHP 変数ではなく、Javascript に由来するためです。

http://icanhazjs.com/

于 2012-12-04T17:29:52.507 に答える