PHP editor
Er zijn in het verleden al meer topics geweest over PHP editors, maar dankzij de geweldige zoekfunctie op deze site ;-) kan ik ze niet terugvinden.
Ik gebruik als editor graag (de inmiddels verouderde) Zend Studio 5.5
Die editor doet wat ik wil, heeft fijne highlighting en ik kan makkelijk (binnen het programma zelf) een FTP server toevoegen.
Eigenlijk wil ik deze editor blijven gebruiken, ware het niet dat ik ga werken met anonymous functions en de editor dit niet kent. Dussss... eigenlijk moet ik een nieuwe editor: liefst gratis, snel, mogelijkheid om ftp server in te stellen, goede highlighting... wie heeft de gouden tip?
Met NetBeans kun je in ieder geval wat je opnoemt. En nog veel meer, en eigenlijk zou elke goede ontwikkelaar die tools moeten gebruiken :)
Nog meer suggesties?
Geintje natuurlijk ;), ik gebruik zelf Dreamweaver CS5 en werkt super vind ik.
Dreamweaver? Dat is toch niet specifiek een PHP editor, maar eerder een WYSIWYG editor?
Eclipse werkt ook prima
PhpED, werkt goed. Ik ben er inmiddels ook achter gekomen dat je je database er in kan zien
intype! ftp server instellen weet ik niet, maar hij is gratis, snel, ik vind de code highlighting fijn (tenminste op blackboard - niet op gewoon white). verder kun je projecten hebben (dus groepen bestanden met elkaar linken), en bundles (type 1 quote in, de sluit komt er vaneiges bij. typ if in en druk op tab, en er staat meteen een hele if-then clausule. verder kun je die ook aanpassen naar wat je zelf wilt.)
Overigens... ook belangrijk... je moet er verschillende projecten in kunnen beheren (was ik vergeten erbij te zetten).
je gaat eindelijk namespaces gebruiken? ;-)
Ik gebruik altijd Vim, maar dat is denk ik voor de meeste van jullie veel te weinig. Het is eigenlijk alleen syntax highlighting + een heel goed systeem waardoor je je muis niet meer mag/hoeft te gebruiken.
Andere editors die misschien wel wat geschikter voor je zijn:
- InType (gratis)
- PHPdesigner2007 (gratis te verkrijgen)
- aptana (erg uitgebreid, Aptana Studio 3 (nieuwste) heeft een PHP support voor lagere versies moet er een plugin worden geïnstalleerd)
Van deze 4 weet ik alleen dat Aptana FTP support heeft, InType en Vim sowieso niet en PHPdesigner weet ik niet.
Nieuwe editor, dus Ik gebruik altijd Vim, maar dat is denk ik voor de meeste van jullie veel te weinig. Het is eigenlijk alleen syntax highlighting + een heel goed systeem waardoor je je muis niet meer mag/hoeft te gebruiken.
Andere editors die misschien wel wat geschikter voor je zijn:
- InType (gratis)
- PHPdesigner2007 (gratis te verkrijgen)
- aptana (erg uitgebreid, Aptana Studio 3 (nieuwste) heeft een PHP support voor lagere versies moet er een plugin worden geïnstalleerd)
Van deze 4 weet ik alleen dat Aptana FTP support heeft, InType en Vim sowieso niet en PHPdesigner weet ik niet.
Gewijzigd op 03/05/2012 16:04:20 door Wouter J
Offtopic:
Dat vroeg ik me ook al af of ik iets met namespaces moet gaan doen... maar kun jij dan in het kort uitleggen wat het voordeel daarvan is? Als ik nu een class aanmaak zou ik bijv. zoiets doen als $article_model = new OzzieCMS_Article_Model(). Hoe verandert dit dan met namespaces?
Gewijzigd op 03/05/2012 16:28:48 door Ozzie PHP
Offtopic:
verkeerde offtopic tags gebruikt ozzie
Offtopic:
wat zijn namespaces, als ik vragen mag?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
namespace OzzieCMS\Model;
class Model
{
// model methods
}
namespace \; // ga naar de normale global scope
$model = new Model(); // werkt niet
$model = new OzzieCMS\Model\Model(); // werkt wel
?>
namespace OzzieCMS\Model;
class Model
{
// model methods
}
namespace \; // ga naar de normale global scope
$model = new Model(); // werkt niet
$model = new OzzieCMS\Model\Model(); // werkt wel
?>
Het is een beetje moeilijk uit te leggen, maar het is geweldig om er mee te werken.
Ozzie, het voordeel: Schonere klassenamen i.p.v. OzzieCMS_Article_Model() wordt een klassenaam alleen Model() waarbij je in het begin hebt gedefinieerd dat die Model klasse uit de OzzieCMS\Article namespace komt. Voorbeeldje:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
/lib/OzzieCMS/Article/Model.php
<?php
namespace OzzieCMS\Article;
class Model
{
// article model methods
}
?>
Andere pagina waarin je de model wilt gebruiken:
<?php
use OzzieCMS\Article\Model; // zorg dat telkens als we Model() gebruik het OzzieCMS\Article\Model() wordt
$articleModel = new Model(); // maak een article model
?>
/lib/OzzieCMS/User/Model.php
<?php
namespace OzzieCMS\User;
class Model
{
// user model methods
}
?>
Bestand waarin we de user model willen gebruiken
<?php
use OzzieCMS\User\Model; // zorg dat Model() OzzieCMS\User\Model() wordt
$userModel = new Model(); // maak een user model aan
?>
Bestand waarin je allebei de models wilt gebruiken
<?php
use OzzieCMS\User\Model as UserModel; // gebruik een alias
use OzzieCMS\Article\Model as ArticleModel; // nog een alias
$articleModel = new ArticleModel();
$articleModel->create(new UserModel());
?>
<?php
namespace OzzieCMS\Article;
class Model
{
// article model methods
}
?>
Andere pagina waarin je de model wilt gebruiken:
<?php
use OzzieCMS\Article\Model; // zorg dat telkens als we Model() gebruik het OzzieCMS\Article\Model() wordt
$articleModel = new Model(); // maak een article model
?>
/lib/OzzieCMS/User/Model.php
<?php
namespace OzzieCMS\User;
class Model
{
// user model methods
}
?>
Bestand waarin we de user model willen gebruiken
<?php
use OzzieCMS\User\Model; // zorg dat Model() OzzieCMS\User\Model() wordt
$userModel = new Model(); // maak een user model aan
?>
Bestand waarin je allebei de models wilt gebruiken
<?php
use OzzieCMS\User\Model as UserModel; // gebruik een alias
use OzzieCMS\Article\Model as ArticleModel; // nog een alias
$articleModel = new ArticleModel();
$articleModel->create(new UserModel());
?>
Zo hou je dus alles mooi gescheiden, krijg je schone klassenamen en zorg je dat we geen conflicten krijgen als je 2 dezelfde klassenamen gebruikt. Zie bijv. ook hoe ik het bij mijn framework gebruik: https://github.com/WouterJ/snakeMvc
Anyhow... nog meer suggesties voor goede PHP editors?
ja vrij lastig inderdaad.... ik blijf er nog even van af ;)
Ozzie, ik zou als ik jou was Aptana even uit proberen. Ik heb hem weer even gedownload en ik vind hem heerlijk (misschien gooi ik nu wel vim van de computer :D).
Wat dingen die hem geweldig maken:
- ingebouwde console + error checker
- projects
- ftp support
- automatisch inladen
- alle php functies + documentatie (dus als je niet meer weet wat voor argumenten er bij een functie horen kun je dat zo lezen evenals het geen de functie doet)
- mogelijkheid tot zelf documenteren bij functies (je kan je eigenlijk uitleg erbij zetten en dat wordt dan in de rest van het project gebruikt)
- mogelijkheid tot inklappen codes (je kan functies/classes inklappen zodat je minder hoeft te scrollen)
- anonymous functions en namespaces support
Namespaces is in mijn ogen niets meerof minder dan het bundelen van classes in packages en het voorkomen dat je lange namen moet gebruiken. Eigenlijk als je OzzieCMS_Model_Article gebruikt als naam gebruik je eigenlijk al namespaces want je packaged je classnames.
$article_model = new OzzieCMS_Article_Model()
wel makkelijker en overzichtelijker dan:
use OzzieCMS\Article\Model;
$article_model = new Model();
Nee dus :(
Gewijzigd op 03/05/2012 17:57:46 door - Raoul -
voor mac heb je onder andere goede editors zoals vim, aptana en sublime text. heb wel wat negatieve verhalen over sublime text gehoord, kan me alleen niet meer herinneren welke...
Ozzie, tja dan moet je maar verder op jou zend methode. Ik kan je alleen aanraden wat ik fijn vind te gebruiken, als jij iets anders fijner vind: gebruik het!
Offtopic:
Toch grappig dat je de verschillen ziet, jij bent ZF gewent en houd dus vaak vast aan die methoden. Ik ben meer een Sensiolabs (SF, Silex, Pimple, enz.) aanhanger en vind die standaarden en methoden beter
jeroen, waarschijnlijk dat je voor sublime moet betalen en je voor de kwaliteit van Sublime ook andere gratis editors hebt.
En Vim is ook een windows editor, alleen heb je voor de mac de MacVim versie...
Raoul, helaas is niet alles voor windows en mac ;-) Ik zit hier ook vaak met dingen waarvan ik denk, waarom geen windows versie ;-)
Voor Mac heb je Aptana, MacVim, Sublime, Textmate (wel betaald, maar wat ik ervan zie is het geweldig) en nog wat andere.
Gewijzigd op 03/05/2012 18:29:16 door Wouter J