Beitrags-Archiv für die Kategorie 'Programmiersprachen'

GIT Commits mit PHP auslesen und ausgeben

Dienstag, 30.10.2018 14:51

Möchte man bei einem Projekt die GIT Commits als History ausgeben, kann man folgenden Code dafür nutzen (vorher vielleicht noch schön machen):

$gitDir = '.';
$output = [];
chdir($gitDir);
exec('git log', $output);
$history = [];
foreach($output as $line){
	if(strpos($line, 'commit')===0){
		if(!empty($commit)){
			array_push($history, $commit);
			unset($commit);
		}
		$commit['hash'] = substr($line, strlen('commit'));
	}elseif(strpos($line, 'Author')===0){
		$commit['author'] = substr($line, strlen('Author:'));
	}elseif(strpos($line, 'Date')===0){
		$commit['date'] = substr($line, strlen('Date:'));
	}else{
		if(!isset($commit['message'])){
			$commit['message'] = '';
		}
		$commit['message'] .= $line;
	}
}
$content = '';
foreach($history as $item){
	echo date('d.m.Y H:i:s', strtotime($item['date'])) . ': ' . $item['message'] . "\n";
}

Verbesserungsvorschläge sind gern gesehen!

Thema: PHP | Kommentare (0) | Autor:

Valider Facebook-Like-Button

Mittwoch, 28.03.2012 05:52

Da es kein HTML-Tag "<fb:like>" gibt, schlägt der Validator Alarm. Abhilfe schafft hierbei mal wieder ein Schnipsel JavaScript, indem wir einfach das Element im DOM erzeugen:

<div id="fb-root"></div>
<script type="text/javascript" src="http://connect.facebook.net/de_DE/all.js#xfbml=1"></script><script type="text/javascript">
// <![CDATA[
var c = document.getElementById('fb-root');
var e = document.createElement('fb:like');
e.setAttribute('action', 'like');
e.setAttribute('width', '100');
e.setAttribute('layout', 'button_count');
e.setAttribute('send', 'false');
e.setAttribute('href', '');
e.setAttribute('show_faces', 'false');
e.setAttribute('font', '');
c.appendChild(e);
// ]]>
</script>

Das war´s schon. Nach einem erneuten Validitäts-Check sollte nun (zumindest an dieser Stelle des Quellcodes) kein Fehler mehr auftauchen.

Thema: JavaScript, Soziale Netzwerke | Kommentare (0) | Autor:

TYPO3 Internetagentur Dresden
Diese Webseite verwendet Cookies. Weitere Informationen.