2010-02-13 2 views
1

Вот мой PHP код:Проблема с использованием метода STRLEN и другой вопрос новичка

<html> 
    <Head> 
    <?php $FirstName="Sergio"; 
        $LastName="Tapia"; 
        $firstNameCount=strlen($Firstname); 
    ?> 
    </Head> 
    <body> 
      <h1>It works!</h1> 
      <?php echo("Why hello there Mr. "); 
         echo $FirstName . " " . $LastName; 
         echo "So, your name appears to have " . $firstNameCount . " letters." ?> 
    </body> 
</html> 

Он всегда показывает, что мой firstNameCount является 0, когда оно должно быть шесть. Любые идеи, что я делаю неправильно?

Также, пожалуйста, сообщите мне, как форматировать код, чтобы он был рекомендован. Поскольку я буквально новичок в PHP, я, вероятно, не форматирую, как утверждают стандарты.

Спасибо.

Редактировать: В чем разница между эхом «texthere» и echo («текст здесь»). Я просто заметил, что я использую оба (которых я, вероятно, не должен). Что я должен использовать?

ответ

4

Имена переменных PHP чувствительны к регистру. Вместо $Firstname вы должны быть ссылки $FirstName:

$firstNameCount=strlen($FirstName); 

Насколько практики укладок обеспокоены нет языка широко используемого стандарта. Наилучшим подходом для форматирования является запись кода, который является чистым и читаемым. Для вашего фрагмента кода выше, я бы сделал это так:

<?php 
    $FirstName = "Sergio"; 
    $LastName = "Tapia"; 
    $firstNameCount = strlen($FirstName); 
?> 
<html> 
    <head> 
    </head> 
    <body> 
    <h1>It works!</h1> 
    <?php echo "Why hello there Mr. " . $FirstName . " " . $LastName . "So, your name appears to have " . $firstNameCount . " letters." ?> 
    </body> 
</html> 

эхо-функция может быть использована в любом моде (эхо («») или эхо «»), единственная рекомендация, я хотел бы сделать, это выбрать один и придерживаться.

+0

Ваш вызов strlen по-прежнему использует версию с неправильным кодом в вашем примере кода. («N» не капитализируется.) – clee

+0

@clee Спасибо, что указали это. Этот пример был для стилизации кода, исправление ошибки было выше этого, но я обновил свой ответ на всякий случай. – nortron

1

Переменные имена чувствительны к регистру. Обратите внимание, как вы пишете $ FirstName и $ Firstname.

1
$Firstname <> $FirstName 
+0

В PHP это будет '! ='. Поскольку этот '<>' не равен этому '! =' В PHP. –

Смежные вопросы