|
|
|
|
| Zitat von Elkano
| Zitat von Danzelot
Und gerade beim Herumdebuggen als Nebeneffekt gehabt: Ein
|
PHP: |
<?php
$string = "SELECT";
echo $string['hurz'];
|
|
gibt unglaublich intuitiv 'S' aus und schmeißt noch nicht mal eine Notice.
| |
Ist doch ganz logisch... dein String ist ein Array, also wird das 'hurz' zu einer Zahl umgewandelt, nämlich 0, um als Index zu dienen. Was soll daran jetzt unerwartet sein?
| |
warum „0“?
wenn der string boolesch interpretiert wird, ist er nicht leer, also z.b. „1“, aber keinesfalls „0“.
wenn er als hashmapzugriff interpretiert wird, sollte es gar nix/fehler/„-1“ zurückgeben, da der schlüssel nicht vorhanden ist.
|
|
|
|
|
|
|
| Zitat von flying sheep
| Zitat von Elkano
| Zitat von Danzelot
Und gerade beim Herumdebuggen als Nebeneffekt gehabt: Ein
|
PHP: |
<?php
$string = "SELECT";
echo $string['hurz'];
|
|
gibt unglaublich intuitiv 'S' aus und schmeißt noch nicht mal eine Notice.
| |
Ist doch ganz logisch... dein String ist ein Array, also wird das 'hurz' zu einer Zahl umgewandelt, nämlich 0, um als Index zu dienen. Was soll daran jetzt unerwartet sein?
| |
warum „0“?
wenn der string boolesch interpretiert wird, ist er nicht leer, also z.b. „1“, aber keinesfalls „0“.
wenn er als hashmapzugriff interpretiert wird, sollte es gar nix/fehler/„-1“ zurückgeben, da der schlüssel nicht vorhanden ist.
| |
|
|
|
|
|
|
|
|
|
|
|
schöne zusammenfassung warum die sperren nutzlos sind, die sollte man denen, die es immer noch nicht gerafft haben, mal ausdrucken.
lustigerweise hab ich alle argumente außer dem letzten heute jmd. vorgebracht. schön, wie viel man sich merken kann, wenn man sich für etwas interessiert.
|
|
|
|
|
|
|
0 on failure?
wo zum teufel gibt’s das denn? entweder -1 oder gleich ne exception (disclaimer: ich kann kein php)
|
|
|
|
|
|
|
Tests mit intval haben ergeben: Ist tatsächlich so.
Eine Warning: Illegal offset type wird übrigens in dem Fall gegeben:
|
PHP: |
<?php
$string = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
echo $string[array()];
|
|
und trotzdem "A" ausgegeben.
Wenn man
|
PHP: |
<?php
$string = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
echo $string[array('a', 'b')];
|
|
versucht, wird eine Warning geworfen und "B" ausgegeben.
|
|
|
|
|
|
|
Oh das ist super! Das ist so genial!
Und wie unterscheide ich in PHP jetzt den Fehlerfall vom regelfall das jemand mir eine 0 oder ein -1 reingegeben hat?
Das ist so unfassbar super. Ich brech weg!
|
|
|
|
|
|
|
Bestimmt kommt gleich Ghandi mit einem gehässigen Kommentar an.
|
|
|
|
|
|
|
inzuspät
|
|
|
|
|
|
|
Das geht ja sogar in die andere Richtung D:
|
PHP: |
<?php
$string = "ABC";
$string[array()] = "#";
$string[array('a', 'b')] = "*";
echo $string; // "#*C"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Welche Lib benutzt du denn? Kannst du keinen Default-Namesspace setzen?
|
|
|
|
|
|
|
|
|
|
|
eingebaute etree-lib; namespaces muss man soweit ich weiß so angeben.
ich hab ihn übergangsweise hart codiert, aber sobald ich das wiederverwende und in der install.rdf das „#“ am ende von http://www.mozilla.org/2004/em-rdf# weglasse oder so ist das halt im arsch.
am robustesten wäre eine xslt, die die namespaces löscht, aber das führt zu weit für ein 20-zeilen-rdf und ein kleines buildscript.
im folgenden das script, ist denke ich ganz dry und nützlich. dateiliste ändern und ab dafür, ausführbar durch draufklicken, ./build.py und python2.7 /pfad/zu/build.py /pfad/zu/extension/ordner
|
Code: |
#!/usr/bin/env python2.7
# -*- coding: utf-8 -*-
import os, sys, zipfile
from xml.etree.ElementTree import ElementTree
extension_path = os.path.dirname(os.path.abspath(__file__)) if len(sys.argv) == 1 else sys.argv[1]
extension_files = {os.path.join(".", p) for p in (
"install.rdf",
"bootstrap.js",
"icon.png",
"stylesheet.css"
)}
os.chdir(extension_path)
#infos holen
rdf_tree = ElementTree()
rdf_tree.parse("install.rdf")
ns_em = "{[URL]http://www.mozilla.org/2004/em-rdf#[/URL]}"
name = rdf_tree.find("//%sid" % ns_em).text
version = rdf_tree.find("//%sversion" % ns_em).text
rdf_filename = "%s-%s.xpi" % (name, version)
if os.path.isfile(rdf_filename):
os.unlink(rdf_filename)
#schnüren der extension und entfernen von backups
with zipfile.ZipFile(rdf_filename, "w") as xpi_file:
for dirpath, dirnames, filenames in os.walk("."):
for filename in filenames:
filepath = os.path.join(dirpath, filename)
if filepath in extension_files:
xpi_file.write(filepath)
elif filepath.endswith("~"):
os.unlink(filepath) |
|
|
|
|
|
|
|
|
|
|
|
|
Die Entwickler von Pentaho sind offenbar ziemlich doof...auf jeden Fall haben sie in ihrem Repository (Subversion ) einen Ordner "libext/" in dem sie jede verdammte Library als JAR vorhalten, die sie benutzen...
|
Code: |
A trunk/libext
A trunk/libext/jsch-0.1.42.jar
A trunk/libext/odfdom.jar
A trunk/libext/jzlib-1.0.7.jar
A trunk/libext/SNMP4J.jar
A trunk/libext/jug-lgpl-2.0.0.jar
A trunk/libext/jakarta-oro-2.0.8.jar
A trunk/libext/dom4j-1.6.1.jar
A trunk/libext/janino.jar
A trunk/libext/saxon9.jar
A trunk/libext/ascsapjco3wrp.jar
A trunk/libext/pentaho
A trunk/libext/pentaho/sqleonardo.jar
A trunk/libext/pentaho/pentaho-xul-core-TRUNK-SNAPSHOT.jar
A trunk/libext/pentaho/pentaho-hdfs-vfs-TRUNK-SNAPSHOT.jar
A trunk/libext/pentaho/pentaho-s3-vfs-TRUNK-SNAPSHOT.jar
A trunk/libext/pentaho/pentaho-vfs-browser.jar
A trunk/libext/pentaho/hadoop-core-0.20.2.jar
A trunk/libext/pentaho/pentaho-xul-swt-TRUNK-SNAPSHOT.jar
A trunk/libext/pentaho/pentaho-database-TRUNK-SNAPSHOT.jar
A trunk/libext/pentaho/libbase-TRUNK-SNAPSHOT.jar
A trunk/libext/pentaho/pentaho-formula-editor-0.0.1.jar
A trunk/libext/pentaho/jets3t-0.7.4.jar
A trunk/libext/pentaho/sqleonardo-swt-wrapper.jar
A trunk/libext/pentaho/kettle-vfs-20100924.jar
A trunk/libext/trilead-ssh2-build213.jar
A trunk/libext/jsonpath.jar
A trunk/libext/JDBC
A trunk/libext/JDBC/derbyclient.jar
A trunk/libext/JDBC/mysql-connector-java-3.1.14-bin.jar
A trunk/libext/JDBC/postgresql-8.4-702.jdbc3.jar
A trunk/libext/JDBC/jtds-1.2.5.jar |
|
Schonmal was von Maven gehört?
|
|
|
|
|
|
|
Maven <3
Aber schlussendlich ist es doch jeden selbst überlassen, ob und wie er die aktuellen Möglichkeiten nutzen will.
|
|
|
|
|
|
|
| Zitat von -Marvin-
das meint ihr doch hoffentlich nicht ernst, oder?!?
| |
Doch, meinen die blöden Designer!
Nichma Html5, sondern komisches xhtml -_-
Und alles statisch gebaut :O
|
|
|
|
|
|
|
Jabinichdenntotalbescheuert?!
Ich habe hier eine ETL-Tools (Kettle aus der Pentaho-Suite) und möchte dafür ein eigenes Plugin schreiben. Ich habe auch ein Beispielplugin, dass super funktioniert. In dem Beispielplugin wird eine Klasse "org.pentaho.di.core.row.ValueMetaAndData" verwendet. Die exisitiert auch in der beiliegenden JAR-Library aber nirgends sonst. Ich kann sie im offiziellen Repo nicht finden. In den Javadocs auf der offziellen Seite finde ich auch nix, da exitiert das ganze Package "row" nicht. Und Google bringt mich auch nicht weiter.
Und weil die dieses "tolle" Subversion benutzen, kann ich auch nicht mal eben das Repo klonen und in den Commitnachrichten suchen ob es vielleicht da irgendwo eine umstrukturierung gab.
Ich will eigentlich nur wissen, wofür die Klasse gut ist. Und außerdem
|
|
|
|
|
|
|
JETZT STÜRZT DIESES VERFICKTE SUBVERSION BEIM AUSCHECKEN STÄNDIG AB!1!!
Ich dreh hier noch am Rad! Wir kann man dieses nichtsnutzige, langsam, beschissene Subversionrotzding überhaupt benutzen. ARGH!
|
|
|
|
|
|
|
Jau, ich hab sonst, was das merging angeht, nix gegen Subversion. Aber das es so anfällig ist: Ich muss oft 3-4 mal committen, wenn ich was größeres einchecken will. kA wodran das liegt.
Manchmal geht es sogar garnicht (zB. mein Liferay Portal mit Tomcat krioeg ich ums Verrecken nicht als Ganzes eingecheckt.)
|
|
|
|
|
|
|
Wenn ich immer höre, das Subversion im vergleich zu CVS toll sein soll, frage ich mich, wie schlimm CVS gewesen sein muss.
Da würde ich ja lieber Diffs hin und her mailen.
--
Ich habe mein Package übrigens immer noch nicht gefunden. Frage ich halt in der Mailingliste - die ist aber nicht offen sondern man muss erst freigeschaltet werden. Oh mann
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Kennt ihr das wenn man einen Bug gerne rückgängig machen würde?
Aktuell hätte ich gerne diese Fähigkeit.
|
|
|
|
|
|
|
|
|
|
|
| Zitat von Achsel-des-Bösen
Wenn ich immer höre, das Subversion im vergleich zu CVS toll sein soll, frage ich mich, wie schlimm CVS gewesen sein muss.
Da würde ich ja lieber Diffs hin und her mailen.
--
Ich habe mein Package übrigens immer noch nicht gefunden. Frage ich halt in der Mailingliste - die ist aber nicht offen sondern man muss erst freigeschaltet werden. Oh mann
| | ich kenn nur svn und (rudimentär) git.
was findest du denn toll? mercurial?
|
|
|
|
|
|
|
geilo
|
|
|
|
|
|
|
|
|
|
Thema: Gehirnsalat ( wir unter uns ) |