<?php
$a = '';
if($a exist 'some text')
echo 'text';
?>
Предположим, что у меня есть код выше, как написать оператор "if ($ a exist" some text ")"?
<?php
$a = '';
if($a exist 'some text')
echo 'text';
?>
Предположим, что у меня есть код выше, как написать оператор "if ($ a exist" some text ")"?
Используйте функцию strpos
: http://php.net/manual/en/function.strpos.php
$haystack = "foo bar baz";
$needle = "bar";
if( strpos( $haystack, $needle ) !== false) {
echo "\"bar\" exists in the haystack variable";
}
В твоем случае:
if( strpos( $a, 'some text' ) !== false ) echo 'text';
Обратите внимание, что мое использование оператора !==
(вместо != false
или == true
или даже просто, if( strpos(... ) ) {
) происходит из-за "истинного"/"ложного" характера обработки PHP возвращаемое значение strpos
.
Пустые строки ложны, поэтому вы можете просто написать:
if ($a) {
echo 'text';
}
Хотя если вы спрашиваете, существует ли определенная подстрока в этой строке, вы можете использовать strpos()
для этого:
if (strpos($a, 'some text') !== false) {
echo 'text';
}
http://php.net/manual/en/function.strpos.php Я думаю, что вы wondiner, если "текст" существует в строке правильно?
if(strpos( $a , 'some text' ) !== false)
Вы можете использовать strpos()
или stripos()
, чтобы проверить, содержит ли строка указанную иглу. Он вернет позицию, в которой он был найден, иначе вернется FALSE.
Используйте операторы ===
или `! ==, чтобы отличать FALSE от 0 в PHP.
Вы можете использовать оператор сравнения ==
, чтобы проверить, равна ли эта переменная тексту:
if( $a == 'some text') {
...
Вы также можете использовать функцию strpos
для возврата первого вхождения строки:
<?php
$mystring = 'abc';
$findme = 'a';
$pos = strpos($mystring, $findme);
// Note our use of ===. Simply == would not work as expected
// because the position of 'a' was the 0th (first) character.
if ($pos === false) {
echo "The string '$findme' was not found in the string '$mystring'";
} else {
echo "The string '$findme' was found in the string '$mystring'";
echo " and exists at position $pos";
}
вы можете использовать этот код
$a = '';
if(!empty($a))
echo 'text';
Если вам нужно знать, существует ли слово в строке, вы можете использовать это. Как вам непонятно, если вы просто хотите знать, является ли переменная строкой или нет. Где "слово" - это слово, которое вы ищете в строке.
if (strpos($a,'word') !== false) {
echo 'true';
}
или используйте метод is_string. Который возвращает true или false для данной переменной.
<?php
$a = '';
is_string($a);
?>
Вы хотите проверить, является ли $a непустой строкой? Так что он содержит только любой текст? Затем будет выполнено следующее.
Если $a содержит строку, вы можете использовать следующее:
if (!empty($a)) { // Means: if not empty
...
}
Если вам также нужно подтвердить, что $a на самом деле является строкой, используйте:
if (is_string($a) && !empty($a)) { // Means: if $a is a string and not empty
...
}