Hướng dẫn how do i check if a string contains only numbers in php? - làm cách nào để kiểm tra xem một chuỗi chỉ chứa các số trong php?

Giả sử bạn chỉ muốn (và chỉ) số nguyên hợp lệ và bạn không muốn người dùng gây rối với dữ liệu và cơ sở dữ liệu của bạn với hexadecimal hoặc

'1337' is pure integer.
'0x539' is not.
'02471' is not.
'0000343' is not.
'0b10100111001' is not.
'1337e0' is not.
'not numeric' is not.
'not numeric 23' is not.
'9.1' is not.
'+655' is not.
'-586' is pure integer.
0 hoặc bất kỳ hình thức số nào khác sau đó bạn luôn có thể sử dụng phương pháp này:

if(((string) (int) $stringVariable) === $stringVariable) {
    // Thats a valid integer :p
}
else {
    // you are out of luck :(
}

Bí quyết rất đơn giản. Nó chuyển biến của chuỗi loại thành loại số nguyên và sau đó chuyển nó trở lại chuỗi. Siêu nhanh, siêu đơn giản.

Vì mục đích kiểm tra, tôi đã chuẩn bị một bài kiểm tra:

'1337' is pure integer.
'0x539' is not.
'02471' is not.
'0000343' is not.
'0b10100111001' is not.
'1337e0' is not.
'not numeric' is not.
'not numeric 23' is not.
'9.1' is not.
'+655' is not.
'-586' is pure integer.

Nơi duy nhất mà phương pháp này giảm là về các số âm, vì vậy bạn cần kiểm tra bên cạnh đó (sử dụng

'1337' is pure integer.
'0x539' is not.
'02471' is not.
'0000343' is not.
'0b10100111001' is not.
'1337e0' is not.
'not numeric' is not.
'not numeric 23' is not.
'9.1' is not.
'+655' is not.
'-586' is pure integer.
1).

Bây giờ tôi nghĩ rằng phương pháp

'1337' is pure integer.
'0x539' is not.
'02471' is not.
'0000343' is not.
'0b10100111001' is not.
'1337e0' is not.
'not numeric' is not.
'not numeric 23' is not.
'9.1' is not.
'+655' is not.
'-586' is pure integer.
2 là tốt nhất. Nhưng trong bất kỳ dự án nào liên quan đến người dùng, tốc độ là một yếu tố quan trọng. Vì vậy, tôi đã chuẩn bị một bài kiểm tra điểm chuẩn thực hiện bài kiểm tra trên 500.000 lần và kết quả thật đáng kinh ngạc:

Phương pháp được phát minh của riêng tôi chỉ mất:

'1337' is pure integer.
'0x539' is not.
'02471' is not.
'0000343' is not.
'0b10100111001' is not.
'1337e0' is not.
'not numeric' is not.
'not numeric 23' is not.
'9.1' is not.
'+655' is not.
'-586' is pure integer.
3 giây để hoàn thành so với
'1337' is pure integer.
'0x539' is not.
'02471' is not.
'0000343' is not.
'0b10100111001' is not.
'1337e0' is not.
'not numeric' is not.
'not numeric 23' is not.
'9.1' is not.
'+655' is not.
'-586' is pure integer.
2 mất:
'1337' is pure integer.
'0x539' is not.
'02471' is not.
'0000343' is not.
'0b10100111001' is not.
'1337e0' is not.
'not numeric' is not.
'not numeric 23' is not.
'9.1' is not.
'+655' is not.
'-586' is pure integer.
5 giây để hoàn thành bài kiểm tra này!
'1337' is pure integer.
'0x539' is not.
'02471' is not.
'0000343' is not.
'0b10100111001' is not.
'1337e0' is not.
'not numeric' is not.
'not numeric 23' is not.
'9.1' is not.
'+655' is not.
'-586' is pure integer.
3
seconds to complete as compared to
'1337' is pure integer.
'0x539' is not.
'02471' is not.
'0000343' is not.
'0b10100111001' is not.
'1337e0' is not.
'not numeric' is not.
'not numeric 23' is not.
'9.1' is not.
'+655' is not.
'-586' is pure integer.
2 which took:
'1337' is pure integer.
'0x539' is not.
'02471' is not.
'0000343' is not.
'0b10100111001' is not.
'1337e0' is not.
'not numeric' is not.
'not numeric 23' is not.
'9.1' is not.
'+655' is not.
'-586' is pure integer.
5 seconds to complete this test!

Để kiểm tra xem một biến chỉ chứa các chữ số, không có dấu phẩy, khoảng thời gian, dấu hiệu tích cực và tiêu cực, ctype_digit và preg_match là các hàm bạn nên sử dụng thay vì is_numeric và is_int.ctype_digit and preg_match are the functions you should use instead of is_numeric and is_int.

Một mảng các số để xác minh, bốn đầu tiên sẽ biến thành True và bốn số cuối cùng nên đánh giá sai.

$numbers = array(
	987654321,
	1234567890,
	"0987654321",
	"1234567890",
	-1,
	2.2,
	1e5,
	'1e3'
	);

bool ctype_digit (chuỗi $ var), trả về true nếu mọi ký tự trong tham số là một chữ số thập phân, sai nếu không., returns true if every character in the parameter is a decimal digit, false otherwise.

echo "cctype_digit \n";
foreach( $numbers as $n )
{
	if( ctype_digit($n) )
		echo "true, digits only: $n \n";
	else
		echo "false, NOT digits only: $n \n";
}
echo "\n\n\n";
// cctype_digit 
// true, digits only: 987654321 
// true, digits only: 1234567890 
// true, digits only: 0987654321 
// true, digits only: 1234567890 
// false, NOT digits only: -1 
// false, NOT digits only: 2.2 
// false, NOT digits only: 100000 
// false, NOT digits only: 1e3 

int preg_match (chuỗi $ mẫu, chuỗi $ var), trả về 1 nếu mẫu khớp với chuỗi đã cho $ var, 0 nếu không., returns 1 if the pattern matches the given string $var, 0 otherwise.

echo "preg_match \n";
foreach( $numbers as $n )
{
	if( preg_match('/^\d+$/',$n) )
		echo "true, digits only: $n \n";
	else
		echo "false, NOT digits only: $n \n";
}
echo "\n\n\n";
// preg_match 
// true, digits only: 987654321 
// true, digits only: 1234567890 
// true, digits only: 0987654321 
// true, digits only: 1234567890 
// false, NOT digits only: -1 
// false, NOT digits only: 2.2 
// true, digits only: 100000 
// false, NOT digits only: 1e3 

bool is_numeric (hỗn hợp $ var), trả về true nếu tham số $ var là một số (bao gồm các số âm, số có vị trí và số thập phân trong các ký hiệu khoa học) hoặc một chuỗi số, sai., returns true if the parameter $var is a number(including negative numbers, numbers with decimal places and numbers in scientific notations) or a numeric string, false otherwise.

echo "is_numeric \n";
foreach( $numbers as $n )
{
	if( is_numeric($n) )
		echo "true, digits only: $n \n";
	else
		echo "false, NOT digits only: $n \n";
}
echo "\n\n\n";
// is_numeric 
// true, digits only: 987654321 
// true, digits only: 1234567890 
// true, digits only: 0987654321 
// true, digits only: 1234567890 
// true, digits only: -1 
// true, digits only: 2.2 
// true, digits only: 100000 
// true, digits only: 1e3 

bool is_int (hỗn hợp $ var), trả về ture nếu $ var là một số nguyên, sai nếu không;, returns ture if $var is an integer, false otherwise;

echo "is_int \n";
foreach( $numbers as $n )
{
	if( is_int($n) )
		echo "true, digits only: $n \n";
	else
		echo "false, NOT digits only: $n \n";
}
echo "\n\n\n";
// is_int 
// true, digits only: 987654321 
// true, digits only: 1234567890 
// false, NOT digits only: 0987654321 
// false, NOT digits only: 1234567890 
// true, digits only: -1 
// false, NOT digits only: 2.2 
// false, NOT digits only: 100000 
// false, NOT digits only: 1e3 

Kiểm tra PHP nếu chuỗi chứa số có ví dụ mã

Xin chào tất cả mọi người, trong bài đăng này, chúng tôi sẽ xem xét cách kiểm tra PHP nếu chuỗi chứa vấn đề số có thể được giải quyết bằng ngôn ngữ máy tính.

if (preg_match('~[0-9]+~', $string)) {
    echo 'string with numbers';
}

Có một số cách tiếp cận khác nhau mà người ta có thể thực hiện để giải quyết cùng một vấn đề kiểm tra PHP nếu chuỗi chứa số. Các đoạn sau đây sẽ kiểm tra các giải pháp tiềm năng khác nhau khác nhau.

if (preg_match('/[A-Za-z]/', $myString) && preg_match('/[0-9]/', $myString))
{
    echo 'Contains at least one letter and one number';
}

Chúng tôi đã thấy cách giải quyết kiểm tra PHP nếu chuỗi chứa số với các ví dụ khác nhau.

Làm cách nào để kiểm tra xem một chuỗi có chứa số trong PHP không?

PHP - Làm thế nào để kiểm tra xem chuỗi có chứa (các) số không? hàm ctype_digit () trả về true nếu chuỗi được truyền cho nó có các chữ số cho tất cả các ký tự của nó, nếu không nó sẽ trả về sai.

Làm thế nào để bạn kiểm tra xem một chuỗi có số và chữ cái?

Kiểm tra xem một chuỗi là số, chữ cái, chữ và số hay ASCII

  • Kiểm tra xem một chuỗi chỉ chứa thập phân: str.isdecimal ()
  • Kiểm tra xem một chuỗi chỉ chứa chữ số: str.isdigit ()
  • Kiểm tra xem một chuỗi chỉ chứa số: str.isnumeric ()
  • Kiểm tra xem một chuỗi chỉ chứa chữ cái: str.isalpha ()

Làm thế nào kiểm tra chuỗi là giá trị hay không trong PHP?

Hàm is_String () kiểm tra xem một biến có thuộc loại loại hay không. Hàm này trả về true (1) nếu biến thuộc loại loại, nếu không nó sẽ trả về sai/không có gì.

Kiểm tra PHP nếu chuỗi chứa số có ví dụ mã

Xin chào tất cả mọi người, trong bài đăng này, chúng tôi sẽ xem xét cách kiểm tra PHP nếu chuỗi chứa vấn đề số có thể được giải quyết bằng ngôn ngữ máy tính.

Có một số cách tiếp cận khác nhau mà người ta có thể thực hiện để giải quyết cùng một vấn đề kiểm tra PHP nếu chuỗi chứa số. Các đoạn sau đây sẽ kiểm tra các giải pháp tiềm năng khác nhau khác nhau.

Chúng tôi đã thấy cách giải quyết kiểm tra PHP nếu chuỗi chứa số với các ví dụ khác nhau.

Làm cách nào để kiểm tra xem một chuỗi có chứa số trong PHP không?

PHP - Làm thế nào để kiểm tra xem chuỗi có chứa (các) số không? hàm ctype_digit () trả về true nếu chuỗi được truyền cho nó có các chữ số cho tất cả các ký tự của nó, nếu không nó sẽ trả về sai.

Làm thế nào để bạn tìm thấy một số trong một chuỗi?

Số từ một chuỗi trong JavaScript có thể được trích xuất vào một mảng số bằng cách sử dụng phương thức khớp. Hàm này lấy một biểu thức chính quy làm đối số và trích xuất số từ chuỗi. Biểu thức chính quy để trích xuất một số là (/(\D+)/).26-JUL-2022

Bạn có thể sử dụng isDigit trên một chuỗi không?

Phương thức python isDigit () Phương thức python isDigit () Phương thức trả về true nếu tất cả các ký tự trong chuỗi là các chữ số. Nó trả về sai nếu không có ký tự là chữ số trong chuỗi.

Làm thế nào để bạn kiểm tra xem có số nguyên trong một chuỗi không?

Cách hiệu quả nhất để kiểm tra xem một chuỗi là số nguyên trong Python có sử dụng str không. Phương thức isDigit (), vì nó mất ít thời gian nhất để thực thi. STR. Phương thức isDigit () trả về true nếu chuỗi đại diện cho số nguyên, nếu không thì sai .28-jan-2021

Bạn có thể sử dụng! = Với chuỗi?

Lưu ý: Khi so sánh hai chuỗi trong Java, chúng ta không nên sử dụng các toán tử == hoặc! =. Các toán tử này thực sự kiểm tra các tham chiếu và vì nhiều đối tượng chuỗi có thể biểu thị cùng một chuỗi, điều này có trách nhiệm đưa ra câu trả lời sai.12-JUL-2019

Làm thế nào để bạn kiểm tra xem một chuỗi chỉ có trong các số?

Kiểm tra xem chuỗi chỉ chứa các số bằng phương thức isDigit () Phương thức chuỗi python isDigit () phương thức trả về true true nếu tất cả các ký tự trong chuỗi là các chữ số, nếu không, nó sẽ trả về giả sai.using isdigit() method Python String isdigit() method returns “True” if all characters in the string are digits, Otherwise, It returns “False”.

Làm thế nào để bạn kiểm tra xem chuỗi chỉ chứa các chữ cái và số PHP?

Phương thức kiểm tra regExp () Để kiểm tra xem một chuỗi chỉ chứa các chữ cái và số trong javascript, hãy gọi phương thức test () trên regex này: /^[a-za-z0-9]*$ /.Nếu chuỗi chỉ chứa các chữ cái và số, phương thức này sẽ trả về đúng.Nếu không, nó trả về sai./^[A-Za-z0-9]*$/ . If the string contains only letters and numbers, this method returns true . Otherwise, it returns false .

Làm thế nào để bạn kiểm tra xem một biến có chứa một số?

2) Sử dụng typeof (), toán tử loại trả về một chuỗi cho biết loại của toán hạng không được đánh giá.Nếu biến là số loại, nó sẽ trả về số chuỗi.Chúng ta có thể sử dụng điều này để xác định xem biến là loại số.Using typeof() The typeof operator returns a string indicating the type of the unevaluated operand. If the variable is type number, it would return the string number . We can use this to determine if the variable is number type.

Làm thế nào kiểm tra chuỗi là giá trị hay không trong PHP?

Hàm is_String () kiểm tra xem một biến có thuộc loại loại hay không.Hàm này trả về true (1) nếu biến thuộc loại loại, nếu không nó sẽ trả về sai/không có gì.is_string() function checks whether a variable is of type string or not. This function returns true (1) if the variable is of type string, otherwise it returns false/nothing.