Saving image from PHP URL

If you have allow_url_fopen set to true: $url=”http://example.com/image.php”; $img = ‘/my/folder/flower.gif’; file_put_contents($img, file_get_contents($url)); Else use cURL: $ch = curl_init(‘http://example.com/image.php’); $fp = fopen(‘/my/folder/flower.gif’, ‘wb’); curl_setopt($ch, CURLOPT_FILE, $fp); curl_setopt($ch, CURLOPT_HEADER, 0); curl_exec($ch); curl_close($ch); fclose($fp);

Laravel Add a new column to existing table in a migration

To create a migration, you may use the migrate:make command on the Artisan CLI. Use a specific name to avoid clashing with existing models for Laravel 5+: php artisan make:migration add_paid_to_users_table –table=users for Laravel 3: php artisan migrate:make add_paid_to_users You then need to use the Schema::table() method (as you’re accessing an existing table, not creating … Read more

What does PHP keyword ‘var’ do?

It’s for declaring class member variables in PHP4, and is no longer needed. It will work in PHP5, but will raise an E_STRICT warning in PHP from version 5.0.0 up to version 5.1.2, as of when it was deprecated. Since PHP 5.3, var has been un-deprecated and is a synonym for ‘public’. Example usage: class … Read more

PHPUnit assert that an exception was thrown?

<?php require_once ‘PHPUnit/Framework.php’; class ExceptionTest extends PHPUnit_Framework_TestCase { public function testException() { $this->expectException(InvalidArgumentException::class); // or for PHPUnit < 5.2 // $this->setExpectedException(InvalidArgumentException::class); //…and then add your test code that generates the exception exampleMethod($anInvalidArgument); } } expectException() PHPUnit documentation PHPUnit author article provides detailed explanation on testing exceptions best practices.

Why doesn’t this code simply print letters A to Z?

From the docs: PHP follows Perl’s convention when dealing with arithmetic operations on character variables and not C’s. For example, in Perl ‘Z’+1 turns into ‘AA’, while in C ‘Z’+1 turns into ‘[‘ ( ord(‘Z’) == 90, ord(‘[‘) == 91 ). Note that character variables can be incremented but not decremented and even so only … Read more

What’s the difference between isset() and array_key_exists()? [duplicate]

array_key_exists will definitely tell you if a key exists in an array, whereas isset will only return true if the key/variable exists and is not null. $a = array(‘key1’ => ‘フーバー’, ‘key2’ => null); isset($a[‘key1’]); // true array_key_exists(‘key1’, $a); // true isset($a[‘key2’]); // false array_key_exists(‘key2′, $a); // true There is another important difference: isset doesn’t … Read more

PHP Constants Containing Arrays?

Since PHP 5.6, you can declare an array constant with const: <?php const DEFAULT_ROLES = array(‘guy’, ‘development team’); The short syntax works too, as you’d expect: <?php const DEFAULT_ROLES = [‘guy’, ‘development team’]; If you have PHP 7, you can finally use define(), just as you had first tried: <?php define(‘DEFAULT_ROLES’, array(‘guy’, ‘development team’));