mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 19.04.2024 01:50 Benutzername: Passwort: Auto-Login

Thema: Fehler im Php-Code = unexpected T_STRING vom 08.09.2009


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> Fehler im Php-Code = unexpected T_STRING
Seite: Zurück  1, 2, 3
Autor Nachricht
Pixelpole

Dabei seit: 25.10.2004
Ort: Trier
Alter: 37
Geschlecht: Männlich
Verfasst Mi 09.09.2009 11:31
Titel

Antworten mit Zitat Zum Seitenanfang

remote hat geschrieben:
Pixelpole hat geschrieben:


PS: genau genommen ist "foo".$bar auch nicht das fixeste. Die schnellste Variante ist 'foot'.$bar weil innerhalb von einfachen Anführungezeichen garnicht erst nach Variablen gesucht wird. Aber wie gesagt -> pipifax


Möchte man vielleicht meinen... ist aber nicht so.
Die Zuweisung mit doppeltem Hochkomma ist schneller... aber der Unterschied ist derart verschwindend, dass es in der Praxis glatt egal sein dürfte.


hab grade nachgemessen, es stimmt tatsächlich. Sehr interessant.
  View user's profile Private Nachricht senden
choise

Dabei seit: 01.02.2007
Ort: Würzburg
Alter: 35
Geschlecht: Männlich
Verfasst Mi 09.09.2009 11:36
Titel

Antworten mit Zitat Zum Seitenanfang

Pixelpole hat geschrieben:
remote hat geschrieben:
Pixelpole hat geschrieben:


PS: genau genommen ist "foo".$bar auch nicht das fixeste. Die schnellste Variante ist 'foot'.$bar weil innerhalb von einfachen Anführungezeichen garnicht erst nach Variablen gesucht wird. Aber wie gesagt -> pipifax


Möchte man vielleicht meinen... ist aber nicht so.
Die Zuweisung mit doppeltem Hochkomma ist schneller... aber der Unterschied ist derart verschwindend, dass es in der Praxis glatt egal sein dürfte.


hab grade nachgemessen, es stimmt tatsächlich. Sehr interessant.


Au weia! wos? das hab ich auch ma so gelernt wie der pole... immer brav mit einfachen hochkommtata. naja gut zu wissen, ich werd mal n test rennen.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 09.09.2009 11:38
Titel

Antworten mit Zitat Zum Seitenanfang

DEKONSTRUKTIV hat geschrieben:
Pixelpole hat geschrieben:

PS: genau genommen ist "foo".$bar auch nicht das fixeste. Die schnellste Variante ist 'foot'.$bar weil innerhalb von einfachen Anführungezeichen garnicht erst nach Variablen gesucht wird. Aber wie gesagt -> pipifax


mir gings nich um optimierung des bestehenden, sondern um ein fiktives php, in dem es die möglichkeit von in-string-variablen garnich gibt. so einen binären concatenator halte ich für eine skriptsprache für einigermaßen sinnvoll.


Ist aber schon quark, was du sagst, oder? Ich meine mal theoretisch - Strings zusammenbauen ist ja häufig unumgänglich.

Niemand aber schreibt (außer die die es nicht besser wissen)

Code:
$q = "select .... from ... where att1='".$value."'";

oder schlimmer:
Code:
$q = 'select .... from ... where att1=\''.$value.'\'';


Da ist ein
Code:
$q = "select .... from ... where att1='$value1' and att2='{$complex->getValue()}'";

doch um einiges Lesbarer. Immer an den Programmierer denken, der das Ding mal pflegen muss. Und in 99% der Fälle bist DU das nach 3 Monaten, und dann ist es fatal, wenn du deinen eigenen Code nicht mehr raffst. Lesbarkeit und Wartbarkeit sind im Groben das A und O in der Softwareentwicklung, alles andere steht hinten an!

Performancekritische Code-Blöcke sind als solche auszuzeichen, möglichst separat zu organisieren und vor allem zu dokumentieren! Nur dann raffst du später, wo du was wie gemacht hast. Und vor allem warum?

Immer noch der Königsweg sind PreparedStatements
Code:
$q="select .... where $att1=?"

wobei sich der DBAL dann um das korrekte Escaping und die Anfüs kümmert.

Und der C-Programmierer hat sich nicht umsonst in seine Stringfunktionen verliebt, sodass der Schlaue PHP-Mann auch schreibt:

Code:
throw new MyException(sprintf('Das ist kein Bug, das ist ein %s!', 'Feature'));


Wir sind uns aber alle einig darüber, dass View-Komponenten in der Geschäftslogik GAR nichts verloren haben, also wie man es dreht oder wendet: Obiges Beispiel - ob geparst oder via . verknüpft - ist totaler Kappes.

Nichtsdestotrotz ist das Suchen nach Variablen innerhalb doublequotes ein Sprachfeature - kein Bug - welches sich daher in Einzelfällen durchaus anbietet. Dafür ist es nämlich gebaut worden.

//
Zum Problem des Threaderstellers fällt mir eigentlich nur folgendes ein: RTFM
Wieder ein typischer Beitrag, der das Wort "Fachforum" einmal mehr ad absurdum führt.


Zuletzt bearbeitet von bacon am Mi 09.09.2009 11:45, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden
id82
Threadersteller

Dabei seit: 13.02.2008
Ort: Stuttgart
Alter: 41
Geschlecht: Männlich
Verfasst Mi 09.09.2009 14:39
Titel

Antworten mit Zitat Zum Seitenanfang

Wer lesen kann ist ganz klar im Vorteil.

Der Code und die Programmierung ist nicht von mir! Ich schimpf mich weder Webdesigner noch Webprogrammierer oder Programmierer. Genausowenig habe ich Ahnung davon. Will ich auch gar nichts mit zu tun haben.

Ich hab in dem Code eine Verlinkung geändert und nicht mehr. Daraufhin kam die Fehlermeldung.
Die Fehlermeldung hab ich schon gelesen. Ich hab ja auch nicht den ganzen Code hier reingesetzt.
Der Fehler war in Zeile 11. Aber was der Fehler ist hab ich nicht erkannt weil ich es einfach nicht wissen kann. Und nach 2 Stunden suchen in Google hab ich so viele Ansätze gehabt das ich den Code nicht noch mehr durcheinander bringen wollte. Darum habe ich es im Forum gepostet weil ich davon ausging das mir hier auf jedenfall jemand helfen kann.

Das hat der Pixelpole ja dann auch. * Ich bin unwürdig * danke.

Von dem was hier weiter diskutiert wurde, verstehe ich nur Bahnhof.

Ich hab mir Mühe gegeben das Problem selbst zu lösen. Hab es leider aber nicht hinbekommen.
TUT MIR LEID! * Ich geb auf... *
  View user's profile Private Nachricht senden
DEKONSTRUKTIV

Dabei seit: 22.06.2009
Ort: bln
Alter: -
Geschlecht: -
Verfasst Mi 09.09.2009 17:20
Titel

Antworten mit Zitat Zum Seitenanfang

bacon hat geschrieben:
DEKONSTRUKTIV hat geschrieben:

mir gings nich um optimierung des bestehenden, sondern um ein fiktives php, in dem es die möglichkeit von in-string-variablen garnich gibt. so einen binären concatenator halte ich für eine skriptsprache für einigermaßen sinnvoll.


Ist aber schon quark, was du sagst, oder? Ich meine mal theoretisch - Strings zusammenbauen ist ja häufig unumgänglich.


das stell ich ja garnich in abrede. ganz im gegenteil. ich will schlicht darauf hinaus, dass eine vernünftige sprache, mithin eine skriptsprache, die ja andauernd den parser und compiler wiederbeschäftigt, nicht mehrere funktional isomorphe strukturen anbieten sollte.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 09.09.2009 18:07
Titel

Antworten mit Zitat Zum Seitenanfang

Syntax ist reine Definitionssache. Wenn du wirklich beide Sprachmittel als Funktion betrachten möchtest, die eine gewisse, gleiche Anzahl an Eingangsparametern erhalten und wo hinten irgendwas rauskommt, was jeweils übereinstimmt, würde ich als Mathekrüppel glatt behaupten, dass hier gar keine Isomorphie vorliegt - denn es kommt eben NICHT immer dasselbe hinten raus. Sprich beide Funktionen arbeiten unterschiedlich, ihre Abbildungsvorschriften sind quasi unterschiedlich. Was aber ein KO-Kriterium für Isomorphismus im mathematischen Sinne ist. Das ganze ist nur Isomorph, wenn du Strings OHNE Variablen reinpackst. Du meinst Isomorphismus wahrscheinlich im Sinne von "unnötiger Redundanz", isset aber nich.
  View user's profile Private Nachricht senden
DEKONSTRUKTIV

Dabei seit: 22.06.2009
Ort: bln
Alter: -
Geschlecht: -
Verfasst Mi 09.09.2009 18:48
Titel

Antworten mit Zitat Zum Seitenanfang

aus strings & variablen wird ein resultierender string zusammengetüdelt. diese funktion erfüllen alle varianten, sind also in funktionaler hinsicht isomorph.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 10.09.2009 10:04
Titel

Antworten mit Zitat Zum Seitenanfang

Das ist formal total falsch. Du wirfst da einen Begriff, der in verschiedenen Fachgebieten komplett andere Bedeutung hat, in den Raum.

2 funktional isomorphe Funktionen, beschränkt man sich auf die Betrachtung dessen, was hinten raus kommt (Wie in Psychologie/Wahrnehmungslehre):

split ( string $pattern, string $string [, int $limit] )
explode ( string $delim , string $string [, int $limit] )

Allerdings ausschließlich für eine Teilmenge von $pattern, nämlich $delim. Dann sind beide auch umkehrbar eindeutig (bijektiv), und bei der Umkehrung (implode / join) kommt auch dasselbe raus. Aber NICHT, wenn $pattern ein regulärer Ausdruck ist!

Mal davon abgesehen, dass das ganze irgendwie total am Thema vorbei geht und ich mich jetzt schon ärgere, mich auf so eine Diskussion überhaupt eingelassen zu haben.

Wo zum Teufel ist MAX wenn man ihn braucht (was selten vorkommt), der kann da sicher ne qualifiziertere Aussage zu treffen als ich es vermag.


Zuletzt bearbeitet von bacon am Do 10.09.2009 10:05, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
 
Ähnliche Themen RegExp String zwischen 2 Zeichen in einem String entfernen
CSS - Fehler im Code?
Fehler im Code
Fehler im Code - nur wo???
Fehler im HTML-Code, wo?
HTML! Wo liegt der Fehler in folgendem Code? Bitte um Hilfe
Neues Thema eröffnen   Neue Antwort erstellen Seite: Zurück  1, 2, 3
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.