2016-10-07 3 views
0

Я использую PHP и MySQL для отправки заказа в базу данных. Когда форма подчиняется addorder.php он знает, чтобы захватить date и ordernumber с помощью поста, однако, когда он делает это, мне это нужно, чтобы выполнить функцию IF, где, если $ordernumber начинается с 7 Значением $system = E или если она начинается с 9 величиной $system = O (то есть «о», а не ноль).PHP, если переменная начинается с

Я не уверен, как это сделать в PHP. Нужно только проверить первую цифру в строке $ordernumber, чтобы проверить, с какими критериями она встречается.

+3

'если ($ ORDERNUMBER [0] == 7 && $ Система == 'E')'? Здесь немного потрудились. – jszobody

ответ

3

Вы можете использовать strval для лечения переменной в виде строки, а затем просто использовать [0] проверить первую цифру:

$ch = strval($ordernumber)[0]; 
if ($ch == '7') { 
    $system = 'E'; 
} elseif ($ch == '9') { 
    $system = 'O'; 
} 
0
if(substr($ordernumber, 0, 1) == '7'){$system = 'E';} 
if(substr($ordernumber, 0, 1) == '9'){$system = 'O';} 
1

Мне нравится ответ на Mureinik, но если вы не хотите для изменения типа данных вашей переменной и если $ ordernumber имеет фиксированное число цифр (n), вы можете найти первое число, разделив его на 10^(n-1). например: если $ число 4-значный номер, то

$firstdigit=$ordernumber/1000; 

И ваш код становится

$firstdigit=$ordernumber/1000; 
if ($firstdigit== '7') { 
    $system = 'E'; 
} elseif ($firstdigit== '9') { 
    $system = 'O'; 
}