Remplacer des caractères sur une table sérialisée

Ici un cas concret sous Prestashop.

Ce code permet de changer tous les http en https sur tous les contenus :

<?php
require(dirname(__FILE__) . '/config/config.inc.php');

    $aData = Db::getInstance()->executeS('
SELECT id,content
FROM ' . _DB_PREFIX_ . 'matable
');

function replacePNJ($value) {
    $value = str_replace('http://www', 'https://www', $value);

    return $value;
}


function buildTree(array $elements, $parentId = 0) {
    $branch = array();
    foreach ($elements as $element) {
        if ($element['parent_id'] == $parentId) {
            $children = buildTree($elements, $element['id']);
            if ($children) {
                $element['children'] = $children;
            }

            $element['content'] = replacePNJ($element['content']);
            $branch[] = $element;
        }

    }
    return $branch;
}


foreach ($aData as $value) {
   $dataTmp = unserialize($value['content']);
    $dataTmp = buildTree($dataTmp);

   $data = serialize($dataTmp);

   Db::getInstance()->execute('UPDATE ' . _DB_PREFIX_ . 'matable SET `content`="' . pSQL($data, true) . '" WHERE id='.$value['id_belvg_productattabs']);
}