PHP.net

Community News: Packagist Latest Releases for 04.29.2013

PHPDeveloper.org - Mon, 29/04/2013 - 15:03
Recent releases from the Packagist:

Community News: Packagist Latest Releases for 04.28.2013

PHPDeveloper.org - Sun, 28/04/2013 - 15:01
Recent releases from the Packagist:

Community News: Packagist Latest Releases for 04.27.2013

PHPDeveloper.org - Sat, 27/04/2013 - 15:09
Recent releases from the Packagist:

PHPMaster.com: Better Understanding Random

PHPDeveloper.org - Fri, 26/04/2013 - 18:52

On PHPMaster.com there's a new tutorial talking about randomness in PHP, what it is and some of the things it can be used for.

Use of random values is very important in the computer security field. It is crucial in computer programming for development of secure systems that are not vulnerable to malicious subversion. Cryptography relies on random value's generation and their reproducibility for unpredictable output that is core for security of any system. Random values are fundamental for secure coding practices and PHP highly makes use of them for security. You will find them used in all libraries and frameworks and almost all codes rely on them for the generation of tokens, salts and as inputs for further functions.

He talks about the important of good random numbers and some of the common uses for it including generating salts and unique identifiers. He mentions the "pseudorandomness" of PHP's generators and how they're seeded to help increase this randomness. He finishes up the tutorial with some suggestions and language features for creating "as random as possible" values like using "/dev/urandom" on Linux-based systems.

Link: http://phpmaster.com/better-understanding-random

/Dev/Hell Podcast: Episode 31: Feline Tooth Extraction

PHPDeveloper.org - Fri, 26/04/2013 - 17:22

The /Dev/Hell podcast has posted their latest episode - Episode #31 - Feline Tooth Extraction. The podcast is hosted by PHP community members Chris Hartjes and Ed Finkler.

Short notes time: In this episode, Chris and Ed talk about conferences we always wanted to go to, and languages & tools we'd thought we'd hate and turned out to like. Then Ed waxes on the Open Recipes project.

You can listen to this latest episode either through the in-page player or by downloading the mp3. Links to all of the technologies and tools they mention are in the show's notes on the page.

Link: http://devhell.info/post/2013-04-24/feline-tooth-extraction

Software Gunslinger: PHP is meant to die, continued

PHPDeveloper.org - Fri, 26/04/2013 - 16:15

In his previous post ("PHP was meant to die") the point was made that PHP isn't really designed as a language to handle long running processes very well. It's made to handle a few operations and then die at the end of the request. In this follow up post he talks more about using PHP for long running processes and a library that could help.

Yes, I already acknowledged that PHP has a garbage collection implementation starting 5.3.0 and up (opt-in or opt-out, that's not the problem). I also acknowledge that garbage collection works, and is able to take care of most circular references just fine. [...] Anyway, as previously stated too, garbage collection is a great thing, but not enough for PHP. It's a borrowed feature that does not play well with old fundamental decisions inherited from the original design. Garbage collection is not a magical solution for every problem, like many tried to argue about. Let's illustrate with another example.

His example uses the React PHP library (a non-blocking I/O platform) to handle a lot of incoming data to a port and report back some memory usage and limit settings. He explains a bit about what's happening and shares the results of the test, including the end result - a fatal error when the memory limit was hit. He still comes to the same conclusion, ultimately...PHP is just not the language to use for long-running processes that do any large amount of work.

Link: http://software-gunslinger.tumblr.com/post/48215406921/php-is-meant-to-die-continued

Community News: Packagist Latest Releases for 04.26.2013

PHPDeveloper.org - Fri, 26/04/2013 - 15:09
Recent releases from the Packagist:

Luis Atencio: Notes on Continuous Delivery - Implementing a Testing Strategy

PHPDeveloper.org - Thu, 25/04/2013 - 18:55

Luis Atencio has posted the latest article in his "Continuous Delivery" series today, this time with a focus on implementing a testing strategy. This is the fourth post in the series (part 1, part 2 and part 3).

There are three things in life that are always held to be true: we will die someday; we will pay taxes; and software will have bugs.... LOL [...] A testing strategy is often overlooked in software projects. This should not be too surprising, we want to build applications quickly and release them quickly. However, leaving quality out of the picture or towards the end are terrible mistakes.

He talks some about the different types of testing that revolve around software development - "business facing" and "technology facing." These are each split down even further into things like acceptance, integration and unit testing.

Link: http://www.luisatencio.net/2013/04/notes-on-continuous-delivery.html

Rob Allen: Simple logging of ZF2 exceptions

PHPDeveloper.org - Thu, 25/04/2013 - 17:31

In this new post to his site Rob Allen shows you how to implement a simple logging method for catching exceptions in your Zend Framework 2 application.

I recently had a problem with a ZF2 based website where users were reporting seeing the error page displayed, but I couldn't reproduce in testing. To find this problem I decided to log every exception to a file so I could then go back and work out what was happening. In a standard ZF2 application, the easiest way to do this is to add a listener to the 'dispatch.error' event and log using ZendLog.

He uses an event listener to attach a service that contains a "logException" method. This method uses the ZendLog component to write out the error message to a local log file including a backtrace of where the issue occurred.

Link: http://akrabat.com/zend-framework-2/simple-logging-of-zf2-exceptions

PHP.net: PHP 5.5 beta 4 is now available

PHPDeveloper.org - Thu, 25/04/2013 - 16:15

The PHP.net site has posted about the release of PHP 5.5 beta 4, the last beta that will be made for this series.

The PHP development team announces the release of the 4th beta of PHP 5.5.0. This release fixes some bugs against beta 3 and cleans up some features. This is a development preview - do not use it in production.

Several bugs were fixed and changes made - you can read the complete list in the NEWS file. To get this latest beta and try it out with your applications (and run the tests) you can download it here (here for Windows).

Link: http://php.net/index.php#id2013-04-25-1

Community News: Packagist Latest Releases for 04.25.2013

PHPDeveloper.org - Thu, 25/04/2013 - 15:04
Recent releases from the Packagist:

Community News: Packagist Latest Releases for 04.24.2013

PHPDeveloper.org - Wed, 24/04/2013 - 15:06
Recent releases from the Packagist:

Community News: Latest Releases from PHPClasses.org

PHPDeveloper.org - Wed, 24/04/2013 - 14:07

PHP Podcast: Episode #2 - Adam Culp

PHPDeveloper.org - Tue, 23/04/2013 - 17:47

The PHP Podcast (from Zend) has posted its second episode - Episode #2, an interview with Adam Culp who recently joined the team at Zend and is a organizer for the South Florida PHP User Group.

In this episode we talk to Adam Culp on his very first day as a Zend employee. We talk about PHP community and Adam's decision to move from the realm of independent consultant to Zender! Adam is the organizer of SunshinePHP, PHP Guru and joining the Zend Professional Services Team.

You can listen to this latest episode either through the in-page player or by downloading the mp3 directly. You can also subscribe to their feed of you want this and future episodes pulled automatically.

Link: http://phppodcast.com/episode-2-adam-culp/

Pádraic Brady: 20 Point List For Preventing Cross-Site Scripting In PHP

PHPDeveloper.org - Tue, 23/04/2013 - 16:27

Pádraic Brady has posted a 20 point list that wants to help you prevent cross-site scripting (XSS) issues in your applications.

Summarising knowledge has as much value as writing a 200 page treatise on a topic, so here is a list of 20 brief points you should bear in mind when battling Cross-Site Scripting (XSS) in PHP. Minus my usual book length brain fart . Chances are good that ignoring or acting contrary to any one of these will lead to a potential XSS vulnerability. It's not necessarily a complete list - if you think something needs to be added, let everyone know in the comments.

His tips include things like:

  • Never pass data from untrusted origins into output without either escaping or sanitising it.
  • Remember that anything not explicitly defined in source code has an untrusted origin.
  • Always include ENT_QUOTES, ENT_SUBSTITUTE and a valid character encoding when calling htmlspecialchars().
  • Use rawurlencode() to escape strings being inserted into URLs and then HTML escape the entire URL.
  • Validate all complete URLs if constructed from untrusted data.
  • Remember that HTMLPurifier is the only HTML sanitiser worth using.
  • Ensure that cookies which must only be transmitted over HTTPS are marked Secure.

He points out that XSS is still one of the most "popular" (and easy to exploit) attack methods out there, so keep these tips in mind when writing up your code.

Link: http://blog.astrumfutura.com/2013/04/20-point-list-for-preventing-cross-site-scripting-in-php

Community News: Packagist Latest Releases for 04.23.2013

PHPDeveloper.org - Tue, 23/04/2013 - 15:01
Recent releases from the Packagist:

Community News: Latest PECL Releases for 04.23.2013

PHPDeveloper.org - Tue, 23/04/2013 - 14:03
Latest PECL Releases:
  • ev 0.2.4 Fix: build error in Mac OS X: inline php_ev_set_watcher_priority function had been exported as a library symbol

  • timezonedb 2013.3 Updated to version 2013.3 (2013c)

  • amqp 1.0.10 1.0.10 Release: * report correct version in module info (Lars Strojny) * fix class interface definitions (Vladimir Kartaviy) * add ability to bind a queue with an empty routing key (Vladimir Kartaviy) * fix constant AMQP_IFUNUSED (Florin Patan, Bernhard Weisshuhn) * added stubs for ide use (Vladimir Kartaviy, Bernhard Weisshuhn) * Fixed memory leak in queue->declareQueue (Ilya a.k.a. coodix) * support for php 5.5 (Lars Strojny) * add support for read and write timeouts (Bogdan Padalko) * fix memory leak in queue->consume (Dmitry Vinogradov) * add support for custom exchange types (empi89) * support for nested custom headers (Bernhard Weisshuhn) * fix memory (Bernhard Weisshuhn) For a complete list of changes see: https://github.com/pdezwart/php-amqp/compare/v1.0.9...v1.0.10 1.0.9 Release: * Fix pecl relase 1.0.8 Release: * Skip var_dump test on PHP 5.2 * Initialize consumer tag string length to zero * Support connection time outs * Adding consumer_tag parameter to AMQPQueue::cancel * Clean up error code handling 1.0.6 Release: * 62354: Segmentation fault when printing or dumping an object that contains an AMQP object * Adding in missing tests * Fixing release number in PHP information * Adding .gitignore info for Git users * Cleaning up debug handling 1.0.5 Release: * 62696: Incorrect exchange type * Handles server connections being closed during consume and publish correctly * 62628: Exception thrown in consume will lock PHP * 61533: Segmentation fault when instantiating channel, queue or exchange with wrong object, then using it 1.0.4 Release: * 62549: Fixing broken persistent connection * 62412: Fixing segfault due to destruction order * 62411: Fixing declaration overload bug * 62410: Fixing declaration overload for 5.4 * 61337: Adding License file * 61749: Fixing handling for binary content in envelope * 62087: Adding appropriate version information * 62354: Enabling debugging dumping of objects * 61351: Updating min PHP version requirements to 5.2.0 1.0.3 Release: * Fixing compilation issue with PHP 5.4 1.0.2 Release: Fixed bug: * Memory leak when using AMQPQueue::get from a queue with no messages 1.0.1 Release: Fixed bug: * 61247: Allow queue creation with empty queue name, and return auto generated name * 61127: Segmentation fault when cleaning up an AMQPChannel without calling AMQPConnection::connect first 1.0.0 Release: Changed/finalized API signature: * Exposing AMQPChannel * Exposing AMQPEnvelope * Exposing more queue and exchange arguments and flags * Exposing basic.qos Added persistent connections Cleaned up codebase Fixed memory leaks and segmentation faults 0.3.1 Release: Fixed bug: * 24323: Cannot get the name for auto-named reply-to queues 0.3.0 Release: Fixed memory leaks in many functions (courtesy Jonathan Tansavatdi and Andy Wick) Fixed consume method to return proper values Cleaned up variable usage Fixed bugs: * 22638: Unexpected exit code 1 with AMQPQueue::consume() * 22698: AMQPQueue::consume 0.2.2 Release: Made extension compatible with PHP lt 5.3 (courtesy John Skopis) Fixed wrong typing of message properties (courtesy John Skopis) 0.2.1 Release: Fixed refcount decrementing bug causing segfaults. 0.2.0 Release: Works with AMQP 0-8 and 0-9-1 (used by RabbitMQ 2.*) Modified AMQPConnection object: * Requires call to 'connect' method to connect (no longer connects on instantiation) * Added support for disconnect and reconnect * Added helper setters for port, host, vhost, login and password Improved consume method to block for MIN messages, and try to get MAX messages if available Fixed zval descoping bugs Fixed bugs: * 17809: Couldn't compile pecl extension under PHP 5.3 * 17831: Segmentation fault when the exchange doesn't exists * 19707: AMQPQueue::get() doesn't return the message * 19840: Connection Exception

  • event 1.6.1 Fix: bug #64652 where Event::__construct returned valid object, however, with uninitialized internal struct which caused segmentation faults in further method calls

Dutch PHP Conference 2013

PHP Conferences - Tue, 23/04/2013 - 00:00
Ibuildings is proud to organise the seventh Dutch PHP Conference on June 7 and 8, plus a pre-conference tutorial day on June 6. Both programs will be completely in English so the only Dutch thing about it is the location. This year we have 30+ speakers gathering in Amsterdam. The 3-track main conference covers topics like PHP 5.5, software design, APIs, Zend Framework 2, Symfony 2, security, scalability and more. Our Tutorial Day has an additional 16 in-depth sessions to choose from. Your DPC ticket also lets you into the Dutch Mobile Conference: an additional two tracks about cutting edge javascript and non-native application development. This year features several side events: a bigger and better unconference, a Zend sponsored hackathon, a social in downtown Amsterdam, and a Symfony2 certification exam. The Early Bird special ends April 28th, so book right away for a 15% discount. We look forward to seeing you in June!
Categories: PHP.net
Syndicate content