Объединение двух столбцов в одну строку в Mysql - PullRequest
0 голосов
/ 24 января 2012

Я пытаюсь написать электронное письмо, которое отправляет электронное письмо клиентам компании.

Что происходит, когда поле businessname пустое, вместо него следует использовать приветствие и второе имя.

Проблема, с которой я столкнулся, заключается в том, что я не думаю, что я использую правильный синтаксис для объединения двух строк, предполагается, что он выводит что-то вроде 'Mr Jones', но я просто получаю синтаксическую ошибку, поэтому я думаю,Вероятно, это мой дрянной код, я не очень долго делал php, поэтому я не очень хорош.

<?php
if ($businessname == '')
{
    $name = $row->salutation & $row->surname;
}
else 
{
    $name = $row->businessname;
}    

echo $name;
?>

Ответы [ 2 ]

4 голосов
/ 24 января 2012

Вы не должны получить синтаксическую ошибку с приведенным выше кодом, хотя он не будет делать то, что вы ожидаете. Вы, вероятно, должны хорошо прочитать руководство по строкам .

Независимо от того, оператор конкатенации строк в PHP равен ., поэтому синтаксис того, что вы хотите сделать:

if ($businessname == '') {
  $name = $row->salutation.$row->surname;
} else {
  $name = $row->businessname;
}
echo $name;

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

$name = ($businessname == '') ? $row->salutation.$row->surname : $row->businessname;
echo $name;

Если вам нужно вставить пробел между переменными, вы просто сделаете это:

$row->salutation.' '.$row->surname

К вашему сведению, исходный код был побитовым И между двумя переменными.

0 голосов
/ 24 января 2012

Если вы хотите объединить строки, вы должны использовать '.'

$m1 = 'Hello';
$m2 = 'World';
$test = $m1.' '.$m2;

Вы должны посмотреть на это для большего количества примеров: http://www.phpf1.com/tutorial/php-string-concatenation.html

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