/** * Copyright (C) 2014-2020 ServMask Inc. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * ███████╗███████╗██████╗ ██╗ ██╗███╗ ███╗ █████╗ ███████╗██╗ ██╗ * ██╔════╝██╔════╝██╔══██╗██║ ██║████╗ ████║██╔══██╗██╔════╝██║ ██╔╝ * ███████╗█████╗ ██████╔╝██║ ██║██╔████╔██║███████║███████╗█████╔╝ * ╚════██║██╔══╝ ██╔══██╗╚██╗ ██╔╝██║╚██╔╝██║██╔══██║╚════██║██╔═██╗ * ███████║███████╗██║ ██║ ╚████╔╝ ██║ ╚═╝ ██║██║ ██║███████║██║ ██╗ * ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝ */ if ( ! defined( 'ABSPATH' ) ) { die( 'Kangaroos cannot jump here' ); } class Ai1wm_Export_Content { public static function execute( $params ) { // Set archive bytes offset if ( isset( $params['archive_bytes_offset'] ) ) { $archive_bytes_offset = (int) $params['archive_bytes_offset']; } else { $archive_bytes_offset = ai1wm_archive_bytes( $params ); } // Set file bytes offset if ( isset( $params['file_bytes_offset'] ) ) { $file_bytes_offset = (int) $params['file_bytes_offset']; } else { $file_bytes_offset = 0; } // Set content bytes offset if ( isset( $params['content_bytes_offset'] ) ) { $content_bytes_offset = (int) $params['content_bytes_offset']; } else { $content_bytes_offset = 0; } // Get processed files size if ( isset( $params['processed_files_size'] ) ) { $processed_files_size = (int) $params['processed_files_size']; } else { $processed_files_size = 0; } // Get total content files size if ( isset( $params['total_content_files_size'] ) ) { $total_content_files_size = (int) $params['total_content_files_size']; } else { $total_content_files_size = 1; } // Get total content files count if ( isset( $params['total_content_files_count'] ) ) { $total_content_files_count = (int) $params['total_content_files_count']; } else { $total_content_files_count = 1; } // What percent of files have we processed? $progress = (int) min( ( $processed_files_size / $total_content_files_size ) * 100, 100 ); // Set progress Ai1wm_Status::info( sprintf( __( 'Archiving %d content files...
%d%% complete', AI1WM_PLUGIN_NAME ), $total_content_files_count, $progress ) ); // Flag to hold if file data has been processed $completed = true; // Start time $start = microtime( true ); // Get content list file $content_list = ai1wm_open( ai1wm_content_list_path( $params ), 'r' ); // Set the file pointer at the current index if ( fseek( $content_list, $content_bytes_offset ) !== -1 ) { // Open the archive file for writing $archive = new Ai1wm_Compressor( ai1wm_archive_path( $params ) ); // Set the file pointer to the one that we have saved $archive->set_file_pointer( $archive_bytes_offset ); // Loop over files while ( list( $file_abspath, $file_relpath, $file_size, $file_mtime ) = fgetcsv( $content_list ) ) { $file_bytes_written = 0; // Add file to archive if ( ( $completed = $archive->add_file( $file_abspath, $file_relpath, $file_bytes_written, $file_bytes_offset ) ) ) { $file_bytes_offset = 0; // Get content bytes offset $content_bytes_offset = ftell( $content_list ); } // Increment processed files size $processed_files_size += $file_bytes_written; // What percent of files have we processed? $progress = (int) min( ( $processed_files_size / $total_content_files_size ) * 100, 100 ); // Set progress Ai1wm_Status::info( sprintf( __( 'Archiving %d content files...
%d%% complete', AI1WM_PLUGIN_NAME ), $total_content_files_count, $progress ) ); // More than 10 seconds have passed, break and do another request if ( ( $timeout = apply_filters( 'ai1wm_completed_timeout', 10 ) ) ) { if ( ( microtime( true ) - $start ) > $timeout ) { $completed = false; break; } } } // Get archive bytes offset $archive_bytes_offset = $archive->get_file_pointer(); // Truncate the archive file $archive->truncate(); // Close the archive file $archive->close(); } // End of the content list? if ( feof( $content_list ) ) { // Unset archive bytes offset unset( $params['archive_bytes_offset'] ); // Unset file bytes offset unset( $params['file_bytes_offset'] ); // Unset content bytes offset unset( $params['content_bytes_offset'] ); // Unset processed files size unset( $params['processed_files_size'] ); // Unset total content files size unset( $params['total_content_files_size'] ); // Unset total content files count unset( $params['total_content_files_count'] ); // Unset completed flag unset( $params['completed'] ); } else { // Set archive bytes offset $params['archive_bytes_offset'] = $archive_bytes_offset; // Set file bytes offset $params['file_bytes_offset'] = $file_bytes_offset; // Set content bytes offset $params['content_bytes_offset'] = $content_bytes_offset; // Set processed files size $params['processed_files_size'] = $processed_files_size; // Set total content files size $params['total_content_files_size'] = $total_content_files_size; // Set total content files count $params['total_content_files_count'] = $total_content_files_count; // Set completed flag $params['completed'] = $completed; } // Close the content list file ai1wm_close( $content_list ); return $params; } } Câu chuyện của Internet Banking và Mobile Banking - Vay Tài Chính 247

Câu chuyện của Internet Banking và Mobile Banking

Việc sử dụng những ứng dụng thông minh trên điện thoại giúp khách hàng có thể tiếp cận với các giao dịch thanh toán một cách dễ dàng hơn, đồng thời giúp những người sử dụng tiết kiệm được một khoảng thời gian rất đáng kể. Bài viết dưới đây sẽ cung cấp cho các bạn những sự khác nhau của hai loại hình phổ biến hiện nay đó là mobile banking và internet banking.

Câu chuyện của Internet Banking và Mobile Banking

Internet banking là gì?

Internet banking hay còn được gọi là Online Banking. Đây là một loại hình dịch vụ ngân hàng trực tuyến, cho phép những người gửi tiền được quản lý tài khoản của mình và thực hiện một số các loại giao dịch trong cuộc sống hàng ngày.

Ví dụ như các giao dịch liên quan đến chuyển tiền, gửi tiền, thanh toán tiền điện nước, … thông qua một thiết bị đã được kết nối internet.

Giao dịch của internet banking sẽ được bắt đầu thực hiện khi khách hàng nhập đúng mã otp mà ngân hàng gửi về máy điện thoại thông qua số điện thoại đã đăng ký trên tài khoản đó. Tuy nhiên, trên thực tế thì hiện nay hầu hết các ngân hàng đều đã bắt đầu bỏ qua hình thức gửi mã otp về điện thoại thông qua tin nhắn mà gần như là đã được thay thế bằng digital otp.

Kiểu mã otp này cho phép bạn chỉ cần nhập mã pin ở máy điện thoại mình là có thể thực hiện giao dịch, không cần thiết phải nhập những mã khác nhau cho những lần giao dịch khác nhau.

Lợi ích của Internet Banking

Một trong những lợi ích lớn nhất của loại hình này đó là bạn có thể ngay lập tức thực hiện những giao dịch bạn muốn mà không cần phải ra hẳn địa điểm của ngân hàng đó. Bên cạnh đó thì đây cũng là một ứng dụng có tính bảo mật cao.

Đồng thời, những tiện ích được tích hợp trong một chiếc điện thoại bé nhỏ. Điển hình như việc bạn không cần phải đi đến chỗ thu tiền nước mới có thể đóng được tiền nước. Việc tích hợp như vậy có giúp ích rất lớn về mặt thời gian cho mỗi người chúng ta.

Câu chuyện của Internet Banking và Mobile Banking

Mobile Banking là gì?

Mobile Banking là dịch vụ ngân hàng qua điện thoại mà ngân hàng cung cấp đến người sử dụng. Để có thể thực hiện được những giao dịch thông qua Mobile Banking thì điện thoại của bạn cần được kết nối mạng đầy đủ.

Một số các loại hình giao dịch mà Mobile Banking có thể thực hiện được. Ví dụ như chuyển khoản, truy vấn thông tin, số dư tài khoản của bạn. Đồng thời cũng giống như internet banking, mobile banking cho phép bạn có thể thanh toán được những hóa đơn dịch vụ, nạp tiền điện thoại mà không cần mất thời gian ra ngoài mua thẻ.

Ưu điểm của loại hình Mobile Banking là ở sự đơn giản, dễ sử dụng và thân thiện với người dùng của những tính năng có trên Mobile Banking. Đồng thời, nền tảng này của ngân hàng cũng được cho là có khả năng tương thích cao trên nhiều đời máy, nhiều hãng di động.

Một số sự giống và khác nhau giữa Internet Banking và Mobile Banking

Trên thực tế thì cả hai loại hình thông minh này đều có thể sử dụng trên các thiết bị di động. Tuy nhiên, với Internet Banking thì nhỉnh hơn một chút vì nó còn có thể sử dụng được trên laptop của bạn. Tuy nhiên thì đây cũng chỉ là một sự khác biệt nho nhỏ, không đáng kể.

Bên cạnh đó thì cả hai loại hình này đều cung cấp đến cho người dùng những tính năng khá là giống nhau. Ví dụ như chuyển khoản, truy vấn thông tin, số dư, thanh toán các hóa đơn dịch vụ,..

Nên sử dụng Internet Banking hay Mobile Banking?

Thực ra thì mỗi một loại hình đều có những ưu nhược điểm của riêng nó. Vậy nên bài viết này cũng chỉ đưa ra cho các bạn những hạn chế nhất định của từng loại hình. Còn việc nên lựa chọn loại hình đều để sử dụng thì có lẽ chính bạn sẽ là người trả lời cho câu hỏi này.

Mobile Banking có mặt hạn chế về các loại thiết bị sử dụng vì thế nên tính phổ biến của nó hiện nay đang chưa thể sánh được với Internet Banking. Tuy nhiên về mặt chức năng cung cấp đến người dùng thì Mobile Banking lại tỏ ra không hề thua kém.

Còn đối với Internet Banking thì hạn chế là ở chỗ có quá nhiều những trang web mạo danh ngân hàng mà người dùng đang sử dụng, dẫn đến việc rất có thể người sử dụng sẽ bị ăn trộm thông tin cá nhân cũng như nghiêm trọng hơn là thông tin về tài khoản ngân hàng bị lộ ra ngoài.