| Server IP : 195.130.67.5 / Your IP : 216.73.217.154 Web Server : Microsoft-IIS/10.0 System : Windows NT WEBSERVER1 10.0 build 17763 (Windows Server 2016) i586 User : IUSR ( 0) PHP Version : 7.4.19 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /Old Sites/robotics/wp-content/plugins/search-and-replace/inc/Database/ |
Upload File : |
<?php
namespace Inpsyde\SearchReplace\Database;
use Inpsyde\SearchReplace\Service\MaxExecutionTime;
/**
* Class Importer
*
* @package Inpsyde\SearchReplace\Database
*/
class Importer {
/**
* @var MaxExecutionTime
*/
private $max_execution;
/**
* Importer constructor.
*
* @param MaxExecutionTime $max_execution
*/
public function __construct( MaxExecutionTime $max_execution ) {
$this->max_execution = $max_execution;
}
/**
* Imports a sql file via mysqli
*
* @param string $sql
*
* @return int Number of Sql queries made, -1 if error
*/
public function import_sql( $sql ) {
$this->max_execution->set();
// connect via mysqli for easier db import
$mysqli = new \mysqli( DB_HOST, DB_USER, DB_PASSWORD, DB_NAME );
// Run the SQL
$i = 1;
if ( $mysqli->multi_query( $sql ) ) {
do {
if ( $mysqli->more_results() ) {
$mysqli->next_result();
$i ++;
}
} while ( $mysqli->more_results() );
}
if ( $mysqli->errno ) {
return - 1;
}
mysqli_close( $mysqli );
$this->max_execution->restore();
return $i;
}
}