php
$link = "http://www.itlantik.de/node/add/article?uuid=02516";
if( function_exists('geoip_country_code_by_name') ) {
$geoip_host = geoip_country_code_by_name( parse_url($link, PHP_URL_HOST) );
echo $geoip_host; # DE
}
- echo parse_url("//itlantik.de/dir1/file.ext?param1=val1", PHP_URL_HOST); # itlantik.de
- echo parse_url("http://itlantik.de/dir1/file.ext?param1=val1", PHP_URL_HOST); # itlantik.de
- echo parse_url("https://itlantik.de/dir1/file.ext?param1=val1", PHP_URL_HOST); # itlantik.de
Shell/Cronjob:
/usr/bin/php /home/meineseite/test.php --repeat='123'
<?php
$shellArgs = getopt('', ["repeat:", "optional2::"] );
$repeat = $shellArgs['repeat'];for( $i=0; $i<$repeat; $i++){
if( $i > 5) break; # Endlos-Schleife verhindern
shell_exec("/usr/bin/php " . __FILE__ );
}# weitere PHP-Code für üblichen Ablauf
class a {
var $str = 0;
function b(){
echo $this->str++ . ' ';
return $this;
}
}
$a = new a();
$a->b()->b()->b()->b()->b()->b()->b()->b()->b()->b()->b()->b()->b();
echo $a->str;
Wichtig ist, dass die Rückgabewert selber eine Klasse ist.
<?php
rename_function('strlen', 'new_strlen');
override_function('strlen', '$string', 'return override_strlen($string);');
function override_strlen($string){
Warum liefert "??" anderes Ergebnis als "?:", wenn man sonst identische Werte hat ? Getestet habe ich mit PHP 7.1.4
<?php
$var1 = 0 ?? 123;
$var2 = 0 ?: 123;
echo " $var1 : $var2 ";
// Ergebnis ist 0 : 123
?>
Ich bekomme diesen Fehler:
PHP Warning: geoip_org_by_name(): Required database not available at /usr/share/GeoIP/GeoIPOrg.dat
Mein PHP-Script:
<?php
Damit man GEOIP-PECL auf Debian zum laufen bringt:
- apt-get install geoip-bin geoip-database libgeoip-dev
- pecl install geoip
- Eintrag in php.ini: extension=geoip.so
Danach Apache neu starten oder Konfigurationsdatei neu laden.
<?php
echo geoip_country_code_by_name ( $ip );
// Ausgabe sollte zweistellige Ländercode wie DE oder ähnliches sein.
?>
<?php
echo `dir`;
shell_exec('dir');
?>
Beide funktionieren identisch. Wie kann ich `befehl` bzw. Backticks deaktivieren aber shell_exec('befehl') weiter laufen lassen?
Seitennummerierung
- Vorherige Seite
- Seite 3
- Nächste Seite
Neueste Kommentare
/etc/my.cnf
Edit "/etc/my.cnf" ( under [mysqld] ):
transaction_isolation="READ-COMMITTED"
Restart MariaDB / MySQL:
Create Sub-Directories with WGET
wget -U 'Mozilla/MyUserAgent' -P MyTempDir123 --wait=0.2 --random-wait -nd -r -x -l 4 -e robots=off --reject
Ignore Binaries, JS, CSS etc
wget -U 'Mozilla/MyUserAgent2024' -P MyOutPutDirectory --wait=1 --random-wait -nd -r -l 2 -e robots=off --reject
Intel(R) Xeon(R) E-2288G CPU @ 3.70GHz
# sysbench --threads="$(nproc)" cpu run
AMD Ryzen 7 PRO 3700 8-Core Processor
# sysbench --threads="$(nproc)" cpu run
Reload .bashrc without logging out
Diese Lösung wird empfohlen aber hat bei mir nicht funktioniert.
Welche Alternative gibt es?
Composer + PHP 8.3
ln -snf /opt/plesk/php/8.3/bin/php /etc/alternatives/php
composer.json
In composer.json, update:
Empty Flood Table
drush sqlq "DELETE FROM flood"
Gmail Apps (SMTP Login):…
Gmail Apps (SMTP Login):
https://security.google.com/settings/security/apppasswords