PHP: пытается вычесть возвращаемые значения из strpos () - PullRequest
0 голосов
/ 05 октября 2010

у меня есть этот код:

<?php var_dump(strpos($url, "cashgold.")+9) ?>

<?php var_dump(strpos($url, '/', 8)) ?>

<?php $resta = strpos($url, '/', 8) - strpos($url, "cashgold.")+9 ?>

<?php var_dump($resta) ?>

это печатает:

20 22 20

Я ожидал, что это напечатает:

20 22 2 * * +1010

Ответы [ 2 ]

2 голосов
/ 05 октября 2010

Я думаю, что у вас проблемы с математикой - в частности, с приоритетом оператора .

Когда вы делаете

<?php $resta = strpos($url, '/', 8) - strpos($url, "cashgold.")+9 ?>

вы делаете (22- 11) + 9. Это потому, что + и - имеют одинаковый приоритет, поэтому он оценивается слева направо.

Попробуйте (обратите внимание на квадратные скобки)

<?php $resta = strpos($url, '/', 8) - (strpos($url, "cashgold.")+9) ?>

, чтобы выполнить расчетВы после.

0 голосов
/ 05 октября 2010

Извините, я должен написать:

(strpos($url, "cashgold.")+9)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...