PHP Tips

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3393
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

PHP Tips

Δημοσίευση από mrpc » 12 Οκτ 2011 01:56

Παίζει σε windows, αλλά η __FILE__ δίνει το path με \ και μετά αν εμείς συνεχίζουμε με / γίνεται λίγο περίεργη η κατάσταση... πιο καλά να τα γράφουμε όλα όπως πρέπει ;-)

gvre
Δημοσιεύσεις: 990
Εγγραφή: 14 Οκτ 2010 11:34
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

PHP Tips

Δημοσίευση από gvre » 12 Οκτ 2011 01:58

Από αυτή την άποψη έχεις δίκιο :)

Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3393
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

PHP Tips

Δημοσίευση από mrpc » 12 Οκτ 2011 02:01

Αφού είμαι πανεπιστήμονας :ppp

gvre
Δημοσιεύσεις: 990
Εγγραφή: 14 Οκτ 2010 11:34
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

PHP Tips

Δημοσίευση από gvre » 12 Οκτ 2011 02:04

είσαι είσαι :)

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

PHP Tips

Δημοσίευση από cpulse » 12 Οκτ 2011 10:17

Ένα ακόμα σημείο που δεν συμφωνώ mrpc. Όπως λέει κι ο gvre το forward slash παίζει και σε windows. Και όταν χρειαστεί να φτιάξεις κώδικα με directories και file names βολεύει πάρα πολύ να γράφεις απλό κώδικα και μάλιστα με forward slash γιατί το backward είναι escape symbol και πρέπει να το γράφεις διπλό μέσα σε regexps και γενικότερα strings. Εγώ αντίθετα όταν χρειάζεται να γράφω τέτοιο κώδικα στο φιλτράρισμα του input ρίχνω ένα str_replace('\\', '/', $input) και μετά συνεχίζω τον κώδικα μου μόνο με forward slashes.

Μέχρι τώρα σε καμία περίπτωση δεν έχει χρειαστεί να γυρίσω πίσω τα slashes, αφού γράφουμε κώδικα για web servers, οπότε αυτή η αρχική μετατροπή δεν επηρεάζει άλλα υπο-συστήματα.

Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3393
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

PHP Tips

Δημοσίευση από mrpc » 12 Οκτ 2011 14:36

Έχεις δίκιο, δουλεύει κανονικά με / και σε windows, οπότε είναι λίγο θέμα του πως βολεύεται ο καθένας.

Εγώ δεν νοιώθω άνετα π.χ. όταν τα path μου αποκτούν τη μορφή: c:\htdocs\myproject/includes/file.php, προτιμώ να έχουν ή το ένα ή το άλλο separator μόνο. Όχι ότι έχει πρόβλημα έτσι, αλλά προσωπικά δεν μου αρέσει.

Δεν είναι ωραίο αν σε κάποιο σημείο κάνεις output το path σαν κείμενο (π.χ. λες στον χρήστη σε ποιο αρχείο είναι οι ρυθμίσεις).

Επίσης, το DIRECTORY_SEPARATOR είναι χρήσιμο όταν θες να κάνεις str_replace και ανάλογες λειτουργίες, καθώς όπως σου είπα, το __FILE__, το realpath() και όλες οι σχετικές functions επιστρέφουν \ σε windows.

Προσωπικά γράφω κώδικα ο οποίος τρέχει σε windows server αρκετές φορές (όχι για web εφαρμογές που είναι public, αλλά σε private δίκτυα). Οπότε έχω πάντα στο μυαλό μου ότι ο server δεν είναι πάντα linux.

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

PHP Tips

Δημοσίευση από cpulse » 12 Οκτ 2011 16:38

Αν υπάρχει ένα πράγμα που μισώ στα windows είναι το ανάποδο slash. Αυτό ο να-μην-πω-τι ο Μπίλ.. αφού έκανε που έκανε την αντιγραφή του αιώνα από το unix.. δεν μπορούσε να την κάνει σωστά;

Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3393
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

PHP Tips

Δημοσίευση από mrpc » 12 Οκτ 2011 20:28

Εντάξει... εδώ άλλοι οδηγούνε με το τιμόνι δεξιά, αυτό θα μας ενοχλήσει; :p :D

Άβαταρ μέλους
Pantso
Δημοσιεύσεις: 67
Εγγραφή: 29 Μαρ 2010 16:49
Τοποθεσία: Athens, Greece
Επικοινωνία:

PHP Tips

Δημοσίευση από Pantso » 13 Οκτ 2011 18:24

mrpc έγραψε: 1. Πάντα χρησιμοποιούμε τα κανονικά php tags και αποφεύγουμε τις συντομεύσεις:

Τα short tags της PHP (<?) δεν υποστηρίζονται σε όλα τα server configurations. Αν θέλουμε η εφαρμογή μας να παίζει παντού, το καλύτερο που μπορούμε να κάνουμε είναι να χρησιμοποιούμε το κανονικό tag, δηλαδή <?php. Αντίστοιχα, αποφεύγουμε τις συντομεύεσεις όπως <?=$variable;?>, και βάζουμε ολοκληρωμένη την εντολή <?php echo $variable;?>. Εκτός του θέματος της συμβατότητας, με αυτόν τον τρόπο ο κώδικας μας είναι πιο εύκολα κατανοητός.
Αυτό είναι επίσης σωστή πρακτική ιδιαίτερα σε projects που παίζει και XML μέσα και μπορεί να κάνει conflict με τα processing instructions της XML. Όχι μόνο για τα server configurations
Does not compute ... !
GreekTuts.net - Ελληνικά Βοηθήματα
VideoGamer.gr - Γιατί η ζωή είναι ένα παιχνίδι

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

PHP Tips

Δημοσίευση από Rapid-eraser » 14 Οκτ 2011 10:20

echo '<?xml'; και δεν έχεις κανένα conflict.
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
Pantso
Δημοσιεύσεις: 67
Εγγραφή: 29 Μαρ 2010 16:49
Τοποθεσία: Athens, Greece
Επικοινωνία:

PHP Tips

Δημοσίευση από Pantso » 14 Οκτ 2011 12:42

Βρε ναι οκ απλά γενικά αν παίζουν πολλά άτομα στο project ή είναι τεράστιο, χρησιμοποιώντας τα standards διασφαλίζεις ότι δε θα χάσεις 3 ώρες ψάχνωντας τον κώδικα για το ένα parse error ! Whatever works for everyone !
Does not compute ... !
GreekTuts.net - Ελληνικά Βοηθήματα
VideoGamer.gr - Γιατί η ζωή είναι ένα παιχνίδι

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

PHP Tips

Δημοσίευση από Rapid-eraser » 14 Οκτ 2011 13:38

Νομίζω αυτός ο οδηγός δεν απευθύνεται στην περίπτωση που περιγράφεις :P
Είναι προαπαιτούμενα εκεί και όχι συμβουλή :)
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες