ホームページ >バックエンド開発 >PHPチュートリアル >パーセンテージを使用して文字間の数値を指定する方法
8487820b627113dd990f63dd2ef215f364.904b175f9a50d57c75316becd702e959dcこんにちは
a855a46fb1a45f2fb97062762dd59e7853.64a68909029b5980ab0236b064252fbf6f私は元気です
8487820b627113dd990f63dd2ef215f380.904b175f9a50d57c75316becd702e959dc彼は元気です
a855a46fb1a45f2fb97062762dd59e7853.645b23f6e3ad367b690bc6881e9fce472bはは
2a12cc85bc2d6ead78baa7096b03a4a340.90cb8e0afa29105ae9463e55473c96400fはは
be6e72192b1ecfed16b997c8fb135bd353.645b23f6e3ad367b690bc6881e9fce472bああ
たとえば、$numは上記のページのコンテンツを取得することです
方法Change 8487820b627113dd990f63dd2ef215f3df82915464b9f8c1b86de95133f5c927 間の数値は、小数点以下 2 桁で元の数値の 80% に等しくなります
元のページを保持します 他のコンテンツには漢字が含まれます
$s =<<< TXT<value>64.90</value>你好<price>53.64</price>我好<value>80.90</value>他好<price>53.64</price>哈哈<value>40.90</value>呵呵<price>53.64</price>噢噢TXT;echo preg_replace_callback('/(<value>|<price>)([\d.]+)/', function($m) {return sprintf('%s%.2f', $m[1], $m[2] * ($m[1] == '<value>' ? 0.8 : 0.6));}, $s);
<value>51.92</value>你好<price>32.18</price>我好<value>64.72</value>他好<price>32.18</price>哈哈<value>32.72</value>呵呵<price>32.18</price>噢噢
上の階のお兄さん、あなたがくれたコードは、エラー
解析エラー: C :111.php の 10 行目で構文エラー、予期せぬ T_FUNCTION
取得した値を変数と等しくすることはできますか? 具体的な書き方
$p = preg_replace_callback('/(8487820b627113dd990f63dd2ef215f3| a855a46fb1a45f2fb97062762dd59e78)([d.]+)/', function($m) {return sprintf('%s%.2f', $m[1], $m[2] * ($m[1] == '8487820b627113dd990f63dd2ef215f3' ? 0.8 : 0.6));
匿名関数をサポートしていません。