Невозможно преобразовать строку в целое число в PHP - PullRequest
2 голосов
/ 15 марта 2012

несмотря на все усилия, которые я приложил к типизации, используя функции (int) и intval(). Я все еще не могу преобразовать строку в целое число.
Всякий раз, когда я использую эти функции, строка преобразуется в 0
Вот мой фрагмент кода:

$resolution = "<script type='text/javascript'> 
                  document.write('#'+screen.width+'#');</script >";
$screen=str_replace("#","",$resolution);
echo $wid = (int)$screen;
echo $s = 98 * $wid;

Выходное значение Typecast равно 0.
Я даже пытался напечатать данные, используя var_dump, но это также показывает как int(0)

1 Ответ

5 голосов
/ 15 марта 2012

Ваша логика несовершенна.
Вы смешиваете код сервера и клиента.

Сервер генерирует код (php) и затем передает результаты клиенту. Затем клиент получает сгенерированные результаты и анализирует JavaScript.

<?php
// this is server code, resolution will be just a string to the server
$resolution = "<script type='text/javascript'> document.write('#'+screen.width+'#');</script>";
// you are now removing the # from the above string but keeping it all intact
$screen=str_replace("#","",$resolution);
// converting it to int returns a stupid value (zero?)
echo $wid = (int)$screen;
echo $s = 98 * $wid;
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...