Показать сообщение отдельно
  #15 (permalink)  
Старый 15.12.2020, 09:46
Аспирант
Отправить личное сообщение для ALFRED450 Посмотреть профиль Найти все сообщения от ALFRED450
 
Регистрация: 07.12.2020
Сообщений: 72

Сообщение от laimas Посмотреть сообщение
Ну если создание переменной, это значение из объекта плюс добавление строки, и для использования не только при выводе, тогда да, это оправдано.



Выводите вы просто совсем не то. Даже если создание переменных для неоднократного использования, то какой смысл получить сначала:

$show_weather = $weather->main->temp;

затем

$w_weather = ceil($show_weather);

затем

$sw_weather = $w_weather. "°C";

чтобы вывести

$sw_weather."<br />

это что за баталии такие? Если нужна температура для вывода в строку и для графики, то почему не

$weather = round($weather->main->temp) . '°C';

и вывод с строке

. $weather . "<br />

и где-то для графики $weather. Прочтите еще раз и внимательно о ceil(), это ли нужно использовать?

Если вывод, это конкатенация строк и переменных, то строки нужно заключать в одинарные кавычки, а не в двойные, потому как в РНР вывод в одинарных и двойных, это различие, и вы просто заставляете парсер производить дополнительный бессмысленный разбор строк. Читайте документацию.

PS. Кстати, температура отдается за определенную дату, которая указана в объекте, то есть текущая дата не обязательно может совпадать с датой за которую получены данные. А значит не

dete(format)

а

date(format, $weather->dt)
спасибо, сократил, но все же:
$show_weather = round($weather->main->temp) . '°C';
*!*
$icon=$weather->weather[0]->icon.".png";
$today = date("j.m.Y, H:i");
$cityname = $weather->name;
$wind=$weather->wind->speed." м/с";
$humidity=$weather->main->humidity."%";
*/!*

echo $today."<br />".
$cityname."<br />".
"Влажность: ".$humidity."<br />".
"Ветер: ".$wind."<br />".
$show_weather."<br />
<img src='http://openweathermap.org/img/wn/".$icon."' />";

оставил переменную $show_weather т.к. $weather нужен для получения других данных и если использовать, другие данные ломаются
Ответить с цитированием