ManyToOne cascade remove fails because of OrderBy annotation

I have two entities : an Annonceur can have many Publicite, a Publicite is owned by a single Annonceur :

Annonceur entity :

    /**
     * @ORMOneToMany(targetEntity=Publicite::class, mappedBy="annonceur", orphanRemoval=true, cascade={"remove"})
     * @ORMOrderBy({"id" = "RAND"})
     */
    private $publicites;

The OrderBy annotation is used to get Publicite in random order.

Publicite entity :

    /**
     * @ORMManyToOne(targetEntity=Annonceur::class, inversedBy="publicites")
     */
    private $annonceur;

In my controller, when I wan to delete an instance on Annonceur I have this error message :

DoctrineORMPersistersExceptionInvalidOrientation: Invalid order by orientation specified for AppEntityPublicite#id in /home/sami/vendor/doctrine/orm/lib/Doctrine/ORM/Persisters/Exception/InvalidOrientation.php:13

Removing the OrderBy annotation fix the problem, but I need to keep it !

Override laravel model accessor attribute

So let’s say I have model Product with getPriceAttribute accessor like this

public function getPriceAttribute()
{
  return number_format($this->price);
}

So on every response, I will get price with formatted number. But in some case, I need to return the unformatted number. Example:

$product = Product::find(1);
$product->price = preg_replace('/[^0-9]/', '', $product->price);

But the result still gives me the formatted number instead of unformatted number.

I know I can create separate accessor attribute like getUnformattedPriceAttribute for unformatted number, but the client need to receive the same price attribute.

And the work around that I do for now is to convert the model into array first using ->toArray() and then set the key price to unformatted one. But I want to know if It is possible to override this accessor behaviour when It is still in Laravel Model.

Thank you!

Request Stack does not deliver Information in Symfony 6.4.2

What could be causing the RequestStack to not deliver any information? I am running Shopware 6.5.8 on Symfony 6.4.2.

The following code (using file_put_contents) was used for debugging purposes:

public function onBeforeSendResponse(BeforeSendResponseEvent $event): void
{
    $request = $event->getRequest();
    $this->requestStack->push($request);

    $logMessage = 'Accessing URL: ' . $this->requestStack->getCurrentRequest() . PHP_EOL;          
    file_put_contents('/var/www/html/custom/plugin/CustomRouter/src/routedebug.txt', $logMessage, FILE_APPEND);

    // Rest of the code…
}

However, the routedebug.txt file is empty when I call an URL. What could be causing this issue? Is it related to server configuration? If yes, what might be the cause?

pass php session identifier between frontend and backend pages

I have a website based completely on php pages for frontend and backend and I use session to store some info. This way I just need to put session_start() on top of each page to have the session info available on page.
I would like to move to a different architecture and maintain backend on php while having frontend on html.

With this architecture how can I manage to have the session shared between the backend pages?
As per the documentation:

session_start() creates a session or resumes the current one based on a session identifier passed via a GET or POST request, or passed via a cookie

so I imagine I will have to pass somehow the session identifier back and forth between back and front end. Am I correct? If yes, how can I do it?

Stripe execution order js onComplete and webhook

I use Stripe checkout with a webhook call on checkout.session.completed which activates a PHP script and a javascript call when the payment is completed:

const handleComplete = async function() {
            _paiement.verif(checkout);
        }
        const checkout = await stripe.initEmbeddedCheckout({
            clientSecret,
            onComplete: handleComplete
        });

I didn’t have a problem with test cards or normal bank cards but when doing a test with a virtual card (Pennylane) the javascript call is made before the webhook call which poses a problem for me because the javascript call I use to check that the webhook call went well.

Did I miss a setting, misuse these functions…?

PHP 7.4.10 OpenSSL not loaded and shows as disabled

Environment: Windows 11 x64

Directories installation:

  • c:apache
  • c:phpphp7

php.ini:

  • extension_dir = “C:phpphp7ext”
  • extension=php_openssl.dll

httpd.conf:

Define SRVROOT "c:/apache"

ServerRoot "${SRVROOT}"

#
# Mutex: Allows you to set the mutex mechanism and mutex file directory
# for individual mutexes, or change the global defaults
#
# Uncomment and change the directory if mutexes are file-based and the default
# mutex file directory is not on a local disk or is not appropriate for some
# other reason.
#
# Mutex default:logs

#
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, instead of the default. See also the <VirtualHost>
# directive.
#
# Change this to Listen on specific IP addresses as shown below to 
# prevent Apache from glomming onto all bound IP addresses.
#
Listen 192.168.38.107:443
#Listen 443

#
# Dynamic Shared Object (DSO) Support
#
# To be able to use the functionality of a module which was built as a DSO you
# have to place corresponding `LoadModule' lines at this location so the
# directives contained in it are actually available _before_ they are used.
# Statically compiled modules (those listed by `httpd -l') do not need
# to be loaded here.
#
# Example:
# LoadModule foo_module modules/mod_foo.so
#
LoadModule access_compat_module modules/mod_access_compat.so
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
#LoadModule auth_digest_module modules/mod_auth_digest.so
#LoadModule auth_form_module modules/mod_auth_form.so
#LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_core_module modules/mod_authn_core.so
#LoadModule authn_dbd_module modules/mod_authn_dbd.so
#LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_file_module modules/mod_authn_file.so
#LoadModule authn_socache_module modules/mod_authn_socache.so
#LoadModule authnz_fcgi_module modules/mod_authnz_fcgi.so
#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule authz_core_module modules/mod_authz_core.so
#LoadModule authz_dbd_module modules/mod_authz_dbd.so
#LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
#LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
#LoadModule brotli_module modules/mod_brotli.so
#LoadModule buffer_module modules/mod_buffer.so
#LoadModule cache_module modules/mod_cache.so
#LoadModule cache_disk_module modules/mod_cache_disk.so
#LoadModule cache_socache_module modules/mod_cache_socache.so
#LoadModule cern_meta_module modules/mod_cern_meta.so
LoadModule cgi_module modules/mod_cgi.so
#LoadModule charset_lite_module modules/mod_charset_lite.so
#LoadModule data_module modules/mod_data.so
#LoadModule dav_module modules/mod_dav.so
#LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule dav_lock_module modules/mod_dav_lock.so
#LoadModule dbd_module modules/mod_dbd.so
#LoadModule deflate_module modules/mod_deflate.so
LoadModule dir_module modules/mod_dir.so
#LoadModule dumpio_module modules/mod_dumpio.so
LoadModule env_module modules/mod_env.so
#LoadModule expires_module modules/mod_expires.so
#LoadModule ext_filter_module modules/mod_ext_filter.so
#LoadModule file_cache_module modules/mod_file_cache.so
#LoadModule filter_module modules/mod_filter.so
#LoadModule http2_module modules/mod_http2.so
#LoadModule headers_module modules/mod_headers.so
#LoadModule heartbeat_module modules/mod_heartbeat.so
#LoadModule heartmonitor_module modules/mod_heartmonitor.so
#LoadModule ident_module modules/mod_ident.so
#LoadModule imagemap_module modules/mod_imagemap.so
LoadModule include_module modules/mod_include.so
#LoadModule info_module modules/mod_info.so
LoadModule isapi_module modules/mod_isapi.so
#LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so
#LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
#LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so
#LoadModule lbmethod_heartbeat_module modules/mod_lbmethod_heartbeat.so
#LoadModule ldap_module modules/mod_ldap.so
#LoadModule logio_module modules/mod_logio.so
LoadModule log_config_module modules/mod_log_config.so
#LoadModule log_debug_module modules/mod_log_debug.so
#LoadModule log_forensic_module modules/mod_log_forensic.so
#LoadModule lua_module modules/mod_lua.so
#LoadModule macro_module modules/mod_macro.so
#LoadModule md_module modules/mod_md.so
LoadModule mime_module modules/mod_mime.so
#LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule negotiation_module modules/mod_negotiation.so
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
#LoadModule proxy_express_module modules/mod_proxy_express.so
#LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule proxy_hcheck_module modules/mod_proxy_hcheck.so
#LoadModule proxy_html_module modules/mod_proxy_html.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
#LoadModule proxy_http2_module modules/mod_proxy_http2.so
#LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
#LoadModule proxy_uwsgi_module modules/mod_proxy_uwsgi.so
#LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
#LoadModule ratelimit_module modules/mod_ratelimit.so
#LoadModule reflector_module modules/mod_reflector.so
#LoadModule remoteip_module modules/mod_remoteip.so
#LoadModule request_module modules/mod_request.so
#LoadModule reqtimeout_module modules/mod_reqtimeout.so
LoadModule rewrite_module modules/mod_rewrite.so
#LoadModule sed_module modules/mod_sed.so
#LoadModule session_module modules/mod_session.so
LoadModule session_cookie_module modules/mod_session_cookie.so
#LoadModule session_crypto_module modules/mod_session_crypto.so
#LoadModule session_dbd_module modules/mod_session_dbd.so
LoadModule setenvif_module modules/mod_setenvif.so
#LoadModule slotmem_plain_module modules/mod_slotmem_plain.so
#LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
#LoadModule socache_dbm_module modules/mod_socache_dbm.so
#LoadModule socache_memcache_module modules/mod_socache_memcache.so
#LoadModule socache_redis_module modules/mod_socache_redis.so
#LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
#LoadModule speling_module modules/mod_speling.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule status_module modules/mod_status.so
#LoadModule substitute_module modules/mod_substitute.so
#LoadModule unique_id_module modules/mod_unique_id.so
#LoadModule userdir_module modules/mod_userdir.so
#LoadModule usertrack_module modules/mod_usertrack.so
#LoadModule version_module modules/mod_version.so
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#LoadModule watchdog_module modules/mod_watchdog.so
#LoadModule xml2enc_module modules/mod_xml2enc.so
<IfModule unixd_module>
#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.  
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User daemon
Group daemon

</IfModule>

<IfDefine php7>
LoadModule php7_module "c:/php/php7/php7apache2_4.dll"
</IfDefine>

<IfDefine php8>
LoadModule php8_module "c:/php/php8/php8apache2_4.dll"
</IfDefine>

<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>

<IfModule php7_module>
    SetEnv PHPRC C:/php/php7.2
    PHPIniDir "C:/php/php7"
    AddHandler application/x-httpd-php .php
    AddType application/x-httpd-php .php .html
</IfModule>

<VirtualHost *:443>
    DocumentRoot "c:/www/php7"
    <Directory "c:/www/php7">
        Options -Indexes
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

Environment variables:

  • PHP=C:php;
  • OPENSSL_CONF=C:apacheconfopenssl.cnf;

I tried:

  • Restarted my PC
  • Restarted Apache Server

I really do not know what else to do at this point. I am getting the phpinfo(); page and see no OpenSSL section. Under Phar, I still see OpenSSL Support as disabled.

Use memcache within Ratchet

as the title states how can i use memcache in Ratchet websockets.

I isntalled memcache and valided that is is active with php -l

memcache

memcache support => enabled
Version => 4.0.5.2
Revision => $Revision$

I followed a lot of guides (which is a challenge as there is memcache and memcached and Google does mix the two often).

When i follow the official guide and also a lot of stackoverflow posts: nr1, nr2 and number 3 for example.

I think everything is correctly installed, but when i start my server (which starts ratchet and memcache) i get this error:
PHP Fatal error: Uncaught Error: Class “SessionProvider” not found in /var/www/project/websocket/bin/chat-server.php:16

My file looks like:

use RatchetServerIoServer;
use RatchetHttpHttpServer;
use RatchetWebSocketWsServer;
use MyAppChat;
use SymfonyComponentHttpFoundationSessionSession;
use SymfonyComponentHttpFoundationSessionStorageNativeSessionStorage;
use SymfonyComponentHttpFoundationSessionStorageHandlerMemcacheSessionHandler;
use SymfonyComponentHttpFoundationSessionStorageHandler;

require dirname(__DIR__) . '/vendor/autoload.php';

$memcache = new Memcache;
$memcache->connect('localhost', 11211);

$session = new SessionProvider(
    new MyApp
  , new HandlerMemcacheSessionHandler($memcache)
);

$server = IoServer::factory(
    new HttpServer(
        new WsServer(
            new Chat()
        )
    ),
    8080
);
echo("Server Running on 8080n-----------------n");
$server->run();

The structure of my folders is correct as far as i can see.
i’m not sure if and what to add to my composer file, as i cant find anything about it.

{
"autoload": {
    "psr-4": {
        "MyApp\": "src"
    }
},
"require": {
    "cboden/ratchet": "^0.4"
}

My goal is simply to share sessions between PHP/webserver and Ratchet to use them.

attendance management system using barcode [closed]

I’m new here. I would like to know how to create a simple system about attendance management system using barcode. Thank you.

Preferably, using PHP programming language. It would be a great help. since, I just recently read about PHP in w3schools. Thank you again.

“Message not sent!” when running sentry:test command

I’m trying to add Sentry to a Symfony application, but I can’t get the Sentry client to actually send anything to Sentry. I’ve followed the instructions by running composer require sentry/sentry-symfony, adding the DSN to my .env file, adding this controller;

<?php

namespace AppController;

use Exception;
use SymfonyComponentRoutingAnnotationRoute;

class SentryTestController
{
    #[Route(path: 'sentry_test')]
    public function test()
    {
        throw new Exception('test');
    }
}

and going to the sentry_test page. While the exception is thrown, nothing appears in Sentry.

The Sentry bundle has been added to bundles.php as SentrySentryBundleSentryBundle::class => ['all' => true], I’ve tried setting APP_ENV=prod and APP_DEBUG=false, but it still doesn’t work.

Running php bin/console sentry:test (which got added as a command after installing sentry/sentry-symfony) results in

DSN correctly configured in the current client
Sending test message...
Message not sent!
<warning>Check your DSN or your before_send callback if used</warning>

Anything obvious I’m missing?

I got 0.00Bytes file size indicated on attached XML file from mPDF library, and the document doesn’t confirm PDF/A-3

I use mPDF library to generate PDF/A-3 file, everything work fine except

  1. my pdf file output from this library indicate file to only conform with PDF/A-1B.
  2. my XML attachment in pdf document’s output indicate to be 0.00Bytes although I can open attached file and see detail.

How to fix this issue? Here is some of my code.

enter image description here

enter image description here

$defaultConfig = (new MpdfConfigConfigVariables())->getDefaults();
$fontDirs = $defaultConfig['fontDir'];

$defaultFontConfig = (new MpdfConfigFontVariables())->getDefaults();
$fontData = $defaultFontConfig['fontdata'];

$mpdf = new MpdfMpdf([
  'format' => [210, 297]
  , 'mirrorMargins' => 1
  , 'mode' => 'utf-8'
    , 'PDFA' => true
  , 'PDFAauto' => false
  , 'PDFAversion'=> 'A-3'
  , 'fontDir' => array_merge($fontDirs, [
    $_SERVER['DOCUMENT_ROOT'] . '/font',
  ])
  , 'fontdata' => $fontData + [ // lowercase letters only in font key
    'sarabun' => [
        'R' => 'THSarabunNew.ttf'
        , 'B' => 'THSarabunNew Bold.ttf'
    ]
  ]
  , 'default_font' => 'sarabun'
  , 'debug' => true
]);


$mpdf->SetAssociatedFiles([[
    'name' => $invoiceNumber . '.xml'
  , 'mime' => 'text/xml'
  , 'description' => 'Tax Invoice XML Data'
  , 'AFRelationship' => 'Alternative'
  , 'content' => $xml
]]);

$mpdf->SetAdditionalXmpRdf($rdf);

$mpdf->SetTitle($invoiceNumber);
$mpdf->SetAuthor($masterCompany['companyName']);
$mpdf->SetCreator($masterCompany['companyName']);
$mpdf->SetSubject('Receipt/Tax Invoice');
$mpdf->SetKeywords('Tax Invoice');
$mpdf->WriteHTML($html);
$mpdf->Output($invoiceNumber . '.pdf', 'I');

I can’t find much examples in detail how to output PDF/A-3 document from mPDF from the internet. Here is what I got from there website https://mpdf.github.io/what-else-can-i-do/pdf-a3-xmp-rdf.html

Failing to generate correct OAuth 1.0 signature with PHP

I’m trying to use vanilla PHP to get some data from an API with oAuth 1.0 authorization. My code is below, the API keeps responding to it with code 401: Invalid signature. As far as I can see, the method for generating signature conforms with examples from documentation and from StackOverflow, so I’m not sure what I’m doing wrong. Is there perhaps a problem with my nonce?

const consumer_key = "20CECD28B41A458E9E328BB45C26EACB";
const consumer_secret = "F485B390C5854A69A8DA17554E689D03";
const token = "5F3C117598A14BE8B7136659AB2251C0";
const token_secret = "647E14C4F7EF4DA5AA119D5C60E95114";

function generateNonce($timestamp){
    $TimeReduced = substr($timestamp, 0, -2);
    $string = $TimeReduced;
    $hash = hash('sha1', $string, false);
    return $hash;
}

function generateSignature($request, $timestamp, $nonce){
  $base = $request['method']."&".rawurlencode($request['url'])."&"
      .rawurlencode("oauth_consumer_key=".rawurlencode(consumer_key)
      ."&oauth_nonce=".rawurlencode($nonce)
      ."&oauth_signature_method=".rawurlencode("HMAC-SHA1")
      ."&oauth_timestamp=". rawurlencode($timestamp)
      ."&oauth_token=".rawurlencode(token)
      ."&oauth_version=".rawurlencode("1.0"));

    $key = rawurlencode(consumer_secret).'&'.rawurlencode(token_secret);
    $signature = base64_encode(hash_hmac('SHA1', $base, $key, true));
    return $signature;
}

$ch = curl_init();

$request = array();
$request['url'] = 'https://someniceapi.com';
$request['method'] = 'GET';

curl_setopt($ch, CURLOPT_URL, $request['url']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $request['method']);

$timestamp = time();
$nonce = generateNonce($timestamp);
$signature = generateSignature($request, $timestamp, $nonce);
$headers = array();
$headers[] = 'Authorization: OAuth oauth_consumer_key="'.consumer_key.'",oauth_token="'.token.'",oauth_signature_method="HMAC-SHA1",oauth_signature='.$signature.'",oauth_timestamp="'.$timestamp.'",oauth_nonce="'.$nonce.'",oauth_version="1.0"';
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$result = curl_exec($ch);

dynamically generated form in wordpress is not forming correctly

I’m trying to generate a page with a form in a plugin. So I have this function

function create_form_page(){
    if ( did_action( 'init' ) >= 2 )
        return;
    global $wpdb;

    $page_content = '
        <div style="margin:auto;">
            <h1>تسجيل الدخول</h1>
            <form name="contact_form" method="POST" enctype="multipart/form-data" autocomplete="off" accept-charset="utf-8" action="<?php echo admin_url( "admin-post.php" ); ?>" >
                <label>ID *</label>
                <input id="id" type="text" style="width:30%;" placeholder="please enter your id"/>
                <button type="submit" style="margin-right:5%;" onclick="submitLogin()">Login</button>
            </form>
        </div>
    ';
    $title = 'دخول الموظفين';
    $slug = 'دخول-الموظفين';
 
    $post_type = 'page';
    $post = $wpdb->get_results("DELETE FROM $wpdb->posts WHERE post_title='$title'");
    

    $page_args = array(
        'post_type' => $post_type,
        'post_title' => $title,
        'post_content' => $page_content,
        'post_status' => 'publish',
        'post_author' => 1,
        'post_slug' => $slug
    );
    
    if(!get_page_by_title($title, 'OBJECT', 'page')){
        wp_insert_post($page_args);
    }

}

but when I go to the page it’s not forming correctly, the form element is instead generated like this <form name="contact_form" method="POST" enctype="multipart/form-data" autocomplete="off" accept-charset="utf-8" action="<?php echo admin_url( " admin-post.php"="" );="" ?="">” &gt;<br> <label>ID *</label><br> <input id="id" type="text" style="width:30%;" placeholder="please enter your id"><br> <button type="submit" style="margin-right:5%;" onclick="submitLogin()">Login</button><br> </form>
any ideas how can I prevent this?

Woocommerce : Showing just only 2 values attributes product

I know that I can create attributes of color, size and etc. But for some reason, I had to combine 3 attributes into one and then displayed them differently.

Now, I’ve the attribute with the values :

pa_mixed : Red, Blue, Green, S, M, L, Children, Adult

But on the front end I have to display like :

Colors : Blue, Red

Size : M

Aged : Children

So far I have tried :

    if (!empty ($product->get_attribute('pa_mixed'))):
        $pa_mixed = $product->get_attribute('pa_mixed');
    else:
        $pa_mixed = "";
    endif;

    $size = array('S','M','L'); 
      
      if ( in_array( $size, $pa_mixed ) ) {
         //colors attributes
      }
      //etc

And finally I got lost

please help me to find the right way, thank you

XAMPP Unable to load dynamic library (/opt/lampp/lib/libstdc++.so.6: version `CXXABI_1.3.8′ not found

I am using XAMPP for my PHP project to run it locally. It utilizes PHP extensions written with PHP-CPP library.

I am having this error when I check for my /opt/lampp/bin/php -m

PHP Warning:  PHP Startup: Unable to load dynamic library 'module_name.so' (tried: /opt/lampp/lib/php/extensions/no-debug-non-zts-20220829/module_name.so (/opt/lampp/lib/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /lib/libphpcpp.so.2.4)),

This is part of my Makefile:

COMPILER_FLAGS      =   -Wall -c -O2 -std=c++11 -fpic  -I/opt/lampp/include/ -o
LINKER_FLAGS        =   -shared
LINKER_DEPENDENCIES =   -lphpcpp

When I look for CXXABI in my local system i can find it:

$ strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep CXXABI
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3.6
CXXABI_1.3.7
CXXABI_1.3.8
CXXABI_1.3.9
CXXABI_1.3.10
CXXABI_1.3.11
CXXABI_1.3.12
CXXABI_1.3.13
CXXABI_TM_1
CXXABI_FLOAT128

But i can not find the version in the folder i believe XAMPP utilize:

$ strings /opt/lampp/lib/libstdc++.so.6 | grep CXXABI
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3.6
CXXABI_1.3.7
CXXABI_TM_1

how can i update this library inside of XAMPP or is there any other way to solve this.