Почему класс PHP не возвращает `<h1> 404 </h1><p> Не найдено </p>`? - PullRequest
0 голосов
/ 11 февраля 2011

Почему класс PHP не возвращает <h1>404</h1><p>Not found</p>?

class checkid{
    public $title;
    public $content;
    function status(){
        $this->title='404';
        $this->content='Not found';
    }
}
$checkid=new checkid($url);
//$id=0;
((isset($id)) ? '' : $checkid->status().$title=$checkid->title.$content=$checkid->content);
//Why it does not return `<h1>404</h1><p>Not found</p>`?
echo "<h1>$title</h1><p>$content</p>";

Обновление: Я хорошо знаю, как сделать это через

if(isset($id)){}else{
    $checkid->status();
    $title=$checkid->title;
    $content=$checkid->content);
}

, но я был в затрудненииесли это возможно сделать через

((isset($id)) ? '' : $checkid->status().$title=$checkid->title/*here $content break it down*//*.$content=$checkid->content*/);

Ответы [ 4 ]

3 голосов
/ 11 февраля 2011
  1. Измените isset('id') на isset($id).

  2. Причина, по которой вы получили <h1>404Not found</h1><p>Not found</p>, заключалась в том, что вы объединяли значение $contentдо значения $title.

Кроме того, ваш код довольно беспорядочный.Я позволил себе немного почистить его:

class checkid
{
    public $title;
    public $content;
    function status()
    {
        $this->title='404';
        $this->content='Not found';
    }
}
$checkid=new checkid($url);
//$id=0;
if(!isset($id))
{
    $checkid->status();
    $title=$checkid->title;
    $content=$checkid->content;
}
echo "<h1>$title</h1><p>$content</p>";
3 голосов
/ 11 февраля 2011

Вы не назначаете $title и $content

Возможно, вы хотите что-то вроде этого

   $checkid->status();
   echo "<h1>$checkid->title</h1><p>$checkid->content</p>";
2 голосов
/ 11 февраля 2011

Поскольку вы пытаетесь (ab) использовать условное выражение в качестве оператора if.

if(!isset($id))
{

  $checkid->status();
  $title = $checkid->title;
  $content = $checkid->content;
}
1 голос
/ 11 февраля 2011

Что означает isset('id')?Вы имеете в виду isset($id) или isset($_GET['id'])?И, между прочим,

$checkid->status().$title=$checkid->title.$content=$checkid->content);

не имеет смысла: вы присоединяете возврат статуса () к $checkid И ВЫ ПРИСОЕДИНЯЕТЕ $title, который равен $ checkid->title, СВЯЗАННЫЙ с $content, и всеназначен $checkid->content

Немного смущает там

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...