Srp 11, 2017 - Zápisník    Komentáře nejsou povolené u textu s názvem PHP přechod ze starého php na nové 7.x

PHP přechod ze starého php na nové 7.x

Někdy se stane, že je zapotřebí přejít na novější verzi PHP server.
napŕ. projekt potŕebuje novou funkci ( běžné pokud používáte pluginy třeba u WordPressu).
Jenže pokud využíváte u projektu svoje scripty, rozhodně se stane, že se v takovéto situaci u starších projektu budete nacházet.

Máte dvě varianty:

  1. Nechat projekt tak jak je, hlavně že funguje. ALE nebudete mít novou funkci
  2. Přepsat projekt, aby fungoval na php 7.x. ALE budete mít novou funkci.

Obojí je prostě hodně práce.
Protom zásadní rozdíl přechodu ze staré verze php (5.4 i 5.6) je v komunikaci s databází.

Prostě je třeba všude přidat měkké „i“ u procedurálního volání funkcí mysql.

Proto jsem napsal pár řádek scriptu a ušetřil jsem si práci několika hodin úprav a laděni.

 

function mysql_connect($server,$user,$heslo,$database="") {
    global $db;
    if (empty($database)) $database=$db["db"];
    $link = mysqli_connect($server, $user, $heslo, $database);
    return $link;
}

function mysql_select_db($db,$link) {    
    return mysqli_select_db($link,$db);     
}

function mysql_query($query) {
   global $link;
   return  mysqli_query($link,$query);    
}

function mysql_real_escape_string($query) {
    global $link;
   return mysqli_real_escape_string($link, $query);   
}

function mysql_fetch_array($query) {    
    return mysqli_fetch_array($query);
}

function mysql_num_rows($query) {   
    return mysqli_num_rows($query);
}

function mysql_fetch_assoc($query) {
    
    return mysqli_fetch_assoc($query);
}

function mysql_insert_id() {
     global $link;
    return mysqli_insert_id($link);
}

Mě tohle pomohlo. Za cca 20 minut jsem měl napsáno i vyzkoušen web, že funguje jak má.
Vím, že toto řešení není úplně správně, ale funguje to a za minimum času. Kód zvěřejňuji, třeba někomu pomůže, tak jako mě.

PS: např. mysqli_close mi tu chybí. Použil jsem jen funkce,které v projektu byly použité.