Schnellzugriff » 
Home 
PHP « Previous Entries

PHP: making a file executable

Donnerstag, Februar 24th, 2011

The following little code snippet shows you how to change a files permissions to allow its owning user and group to read and execute it.
public function makeExecutable() {
if(file_exists($this->executablePath)) {
if(DIRECTORY_SEPARATOR == ‘/’) {
// add executable (1) and read (4) bits for user and group
$filePermissions = decoct(fileperms($this->executablePath));
$filePermissions = substr($filePermissions, strlen($filePermissions) – 3);
$newFilePermissions = $filePermissions[0] | 5;
$newFilePermissions .= [...]

Posted in PHP | No Comments »>

TYPO3 HTML save cropping

Dienstag, März 16th, 2010

Meistens reicht die Methode tslib_cObj::crop vollkommen aus, um Texte – etwa für eine Listenansicht – zu kürzen. Wenn jedoch RTE formatierte Texte im Spiel sind und die Formatierung in der gekürzten Version beibehalten werden soll, ist es reine Glückssache, kein invalides (X)HTML durch nicht geschlossene bzw. “verkrüppelte” Tags zu generieren. Abhilfe schafft die folgende crop-Methode, [...]

Posted in PHP, Programmierung, TYPO3 | Kommentare deaktiviert>

suPHP und PHP Opcode Caches

Samstag, August 29th, 2009

Eigentlich ist suPHP eine nette Sache. Das Apache Modul mod_suphp sorgt in Kombination mit einem SetUID Binary dafür, dass PHP-Skripte mit den Berechtigungen des Benutzers, dem sie gehören, ausgeführt werden. Damit das funktioniert muss man in Binär-Distributionen wie etwa Debian Linux nicht mehr tun, als dass Modul zu installieren, einen Blick auf dessen Konfiguration zu [...]

Posted in Linux / Unix, PHP, Webserver | Kommentare deaktiviert>

PHP: Bit Flags

Freitag, März 6th, 2009

In manchen Fällen können Bit Flags in PHP-Skripten sehr nützlich sein. Etwa wenn es darum geht,
anhand eines “action”-Parameters zu entscheiden, welche Objekte instanziiert werden sollen. U.a. auf diese Weise kann
- sonst redundanter – Code gesparrt werden.
Kennern des binären Zahlensystems sollten also mal einen Blick darauf werfen. Alle anderen sollten dringend zu
diesen Kennern werden – das [...]

Posted in PHP, Programmierung | Kommentare deaktiviert>

TYPO3: Frontend Renderer als Singleton

Mittwoch, Februar 11th, 2009

Renderer sind stets einmalig. Das Singleton Design Pattern bilded genau dies ab: Es wird lediglich eine einzige Instanz der Klasse erzeugt und zurückgegeben. Die folgende Klasse kann als Basis für die View-Schicht der eigenen TYPO3 Extension verwendet werden. Sie ist von pi_base abgeleitet und bietet so den gewohnten Funktionsumfang. Der Codeschnipsel stammt aus einer mini [...]

Posted in PHP, Programmierung, TYPO3 | Kommentare deaktiviert>

Module ‘json’ already loaded in Unknown on line 0

Sonntag, Februar 8th, 2009

Mir sind gerade fast die Augen rausgefallen als ich bei einem Blick ins Error-Log des Apache Webservers unter Debian Etch abertausende Zeilen mit der Fehlermeldung "PHP Warning: Module ‘json’ already loaded in Unknown on line 0" sah. Jeder Seitenaufruf erzeugte diesen Fehler. Die installierten Pakete (php5-cgi + Module sowie apache2 + Module) entstammen dem offiziellen [...]

Posted in Linux / Unix, PHP | Kommentare deaktiviert>

phpDocumentor bei SVN commit starten

Dienstag, August 5th, 2008

Was ist Code ohne Dokumentation? Genau: total daneben.
Zum Glück gibt es ja praktische Helfer wie phpDocumentor, um aus Kommentaren eine richtig anständige Dokumentation zu zaubern. Aber das verdammte Ding nach jedem SVN commit anzustoßen ist auf Dauer ganz schön nervig…
Abhilfe verspricht der post-commit hook. In dem Wurzelverzeichnis jedes SVN Repositorys befindet sich ein Verzeichnis namens [...]

Posted in Linux / Unix, PHP | 1 Comment »> « Previous Entries

© 2007 - 2009 Thorsten Boock