вопросы и ответы по использованию PHP
-
Хозяин Гугла
- Сообщения: 42
- Зарегистрирован: 19 июн 2019, 19:59
Сообщение
Хозяин Гугла » 02 июн 2020, 16:33
как сделать, чтобы работало так?
if ($month==01)
{
$month="j";
}
if ($month==02)
{
$month="f";
}
if ($month==03)
{
$month="m";
}
if ($month==04)
{
$month="a";
}
if ($month==05)
{
$month="mm";
}
if ($month==06)
{
$month="jj";
}
if ($month==07)
{
$month="jjj";
}
if ($month==08)
{
$month="aa";
}
if ($month==09)
{
$month="s";
}
if ($month==10)
{
$month="o";
}
if ($month==11)
{
$month="n";
}
if ($month==12)
{
$month="d";
}
выдает ошибку
"Parse error: Invalid numeric literal in Z:\scripts\"
-
XwebDeveloper
- Сообщения: 51
- Зарегистрирован: 13 ноя 2017, 12:53
Сообщение
XwebDeveloper » 02 июн 2020, 17:15
Для того что бы ваш код работал надо сделать так:
if ($month=="01")
{
$month="j";
}
if ($month=="02")
{
$month="f";
}
if ($month=="03")
а вообще для таких ситуаций существует оператор switch:
$month ="02";
switch($month)
{
case "01": $month="j"; break;
case "02": $month="f"; break;
case "03": $month="m"; break;
case "04": $month="a"; break;
case "05": $month="mm"; break;
case "06": $month="jj"; break;
case "07": $month="jjj"; break;
case "08": $month="aa"; break;
case "09": $month="s"; break;
case "10": $month="o"; break;
case "11": $month="n"; break;
case "12": $month="d"; break;
}
echo $month;
-
Хозяин Гугла
- Сообщения: 42
- Зарегистрирован: 19 июн 2019, 19:59
Сообщение
Хозяин Гугла » 02 июн 2020, 17:47
да-да-да!спасибо!
у меня заработало так, может таким же нубасам, как я - пригодится
//список месяцев из файла, каждая строка отдельный месяц
$month = file("Z:\\shop\\month",FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
//берем первую строчку
switch($month[0])
{
case "01": $month="j"; break;
case "02": $month="f"; break;
case "03": $month="m"; break;
case "04": $month="a"; break;
case "05": $month="mm"; break;
case "06": $month="jj"; break;
case "07": $month="jjj"; break;
case "08": $month="aa"; break;
case "09": $month="s"; break;
case "10": $month="o"; break;
case "11": $month="n"; break;
case "12": $month="d"; break;
}
echo $month;
//удаляем первую строчку в файле
$strNum = 1;
$result = "";
$delLine = 1;
$fp = fopen("Z:\\shop\\month", "r");
while (!feof($fp)) {
$line = fgets($fp);
if ($strNum != $delLine) $result .= $line;
$strNum++;
}
fclose($fp);
$fw = fopen("Z:\\shop\\month", "w");
fwrite($fw, $result);
fclose($fw);