PHP xóa dấu gạch ngang khỏi số điện thoại
Cách tốt nhất để thêm dấu gạch ngang vào số điện thoại trong PHP là gì? . Điều này chỉ áp dụng cho các số điện thoại 10 chữ số của Hoa Kỳ Show
Giải pháp tốt nhất
CHỈNH SỬA. Để chung chung hơn một chút và bình thường hóa số điện thoại ở Hoa Kỳ được cung cấp ở bất kỳ định dạng nào (đây là thông lệ phổ biến - không có lý do gì để buộc mọi người nhập số điện thoại ở định dạng cụ thể, vì tất cả những gì bạn quan tâm
Giải pháp liên quanPhp – Cách kiểm tra xem mảng PHP là liên kết hay tuần tựBạn đã hỏi hai câu hỏi không hoàn toàn tương đương
Xem xét những hành vi nào bạn thực sự cần. (Có thể là một trong hai sẽ làm cho mục đích của bạn. ) Câu hỏi đầu tiên (chỉ cần kiểm tra xem tất cả các phím có phải là số không) đã được Đội trưởng kurO trả lời tốt Đối với câu hỏi thứ hai (kiểm tra xem mảng có được lập chỉ mục bằng 0 và theo thứ tự hay không), bạn có thể sử dụng hàm sau
Php – Xóa phần tử khỏi mảng trong PHPCó nhiều cách khác nhau để xóa một phần tử mảng, trong đó một số cách hữu ích cho một số tác vụ cụ thể hơn những cách khác Xóa một phần tử mảngNếu bạn chỉ muốn xóa một phần tử mảng, bạn có thể sử dụng 2 hoặc cách khác là 3Nếu bạn biết giá trị và không biết key để xóa phần tử có thể dùng 4 để lấy key. Điều này chỉ hoạt động nếu phần tử không xảy ra nhiều lần, vì 5 chỉ trả về lần truy cập đầu tiênfunction localize_us_number($phone) { $numbers_only = preg_replace("/[^\d]/", "", $phone); return preg_replace("/^1?(\d{3})(\d{3})(\d{4})$/", "$1-$2-$3", $numbers_only); } echo localize_us_number("5551234567"), "\n"; echo localize_us_number("15551234567"), "\n"; echo localize_us_number("+15551234567"), "\n"; echo localize_us_number("(555) 123-4567"), "\n"; echo localize_us_number("+1 (555) 123-4567"), "\n"; echo localize_us_number("Phone: 555 1234567 or something"), "\n"; 2Lưu ý rằng khi bạn sử dụng 2, các khóa của mảng sẽ không thay đổi. Nếu bạn muốn lập chỉ mục lại các khóa, bạn có thể sử dụng 8 sau 2, điều này sẽ chuyển đổi tất cả các khóa thành các khóa được liệt kê bằng số bắt đầu từ 0Mã số 2đầu ra 3phương pháp function localize_us_number($phone) { $numbers_only = preg_replace("/[^\d]/", "", $phone); return preg_replace("/^1?(\d{3})(\d{3})(\d{4})$/", "$1-$2-$3", $numbers_only); } echo localize_us_number("5551234567"), "\n"; echo localize_us_number("15551234567"), "\n"; echo localize_us_number("+15551234567"), "\n"; echo localize_us_number("(555) 123-4567"), "\n"; echo localize_us_number("+1 (555) 123-4567"), "\n"; echo localize_us_number("Phone: 555 1234567 or something"), "\n"; 3Nếu bạn sử dụng 3, các khóa sẽ tự động được lập chỉ mục lại, nhưng các khóa kết hợp sẽ không thay đổi — trái ngược với 8, sẽ chuyển đổi tất cả các khóa thành khóa số 3 cần phần bù, không phải khóa, làm tham số thứ haiMã số 8đầu ra 9 4, giống như 2, lấy mảng theo tham chiếu. Bạn không gán giá trị trả về của các hàm đó cho mảngXóa nhiều phần tử mảngNếu bạn muốn xóa nhiều phần tử mảng và không muốn gọi hàm 2 hoặc 3 nhiều lần thì có thể sử dụng hàm 8 hoặc 9 tùy thuộc vào việc bạn có biết giá trị hoặc khóa của phần tử muốn xóa hay không.phương pháp function isAssoc(array $arr) { if (array() === $arr) return false; return array_keys($arr) !== range(0, count($arr) - 1); } var_dump(isAssoc(['a', 'b', 'c'])); // false var_dump(isAssoc(["0" => 'a', "1" => 'b', "2" => 'c'])); // false var_dump(isAssoc(["1" => 'a', "0" => 'b', "2" => 'c'])); // true var_dump(isAssoc(["a" => 'a', "b" => 'b', "c" => 'c'])); // true 8Nếu bạn biết giá trị của các phần tử mảng mà bạn muốn xóa, thì bạn có thể sử dụng 8. Như trước đây với 2, nó sẽ không thay đổi các khóa của mảngMã số 9đầu ra 0phương pháp function isAssoc(array $arr) { if (array() === $arr) return false; return array_keys($arr) !== range(0, count($arr) - 1); } var_dump(isAssoc(['a', 'b', 'c'])); // false var_dump(isAssoc(["0" => 'a', "1" => 'b', "2" => 'c'])); // false var_dump(isAssoc(["1" => 'a', "0" => 'b', "2" => 'c'])); // true var_dump(isAssoc(["a" => 'a', "b" => 'b', "c" => 'c'])); // true 9Nếu bạn biết khóa của các phần tử mà bạn muốn xóa, thì bạn muốn sử dụng 9. Bạn phải đảm bảo rằng bạn chuyển các khóa dưới dạng khóa trong tham số thứ hai chứ không phải dưới dạng giá trị. Khóa sẽ không lập chỉ mục lạiMã số 3đầu ra 0Nếu bạn muốn sử dụng 2 hoặc 3 để xóa nhiều phần tử có cùng giá trị, bạn có thể sử dụng 27 để lấy tất cả các khóa cho một giá trị cụ thể rồi xóa tất cả phần tử
Làm cách nào để xóa dấu gạch ngang khỏi chuỗi trong PHP?IN PHP, thay thế chuỗi và xóa ký tự gạch nối. . $str = str_replace('-',' ',$str) ucwords(str_replace('-',' ',$str)) strtolower(str_replace(' ','-',$str)) Làm cách nào để xóa các ký tự đặc biệt khỏi số điện thoại trong PHP?xóa các ký tự đặc biệt khỏi số điện thoại [trùng lặp]
. $ph_number = "+91-5345534534"; . replaceAll("[^0-9]+", $ph_number);
Làm cách nào để xóa dấu gạch nối khỏi ngày trong PHP?Chỉ cần thực hiện str_replace() . preg_replace() chậm hơn. |